天啊~~~~~~~~~ PHP的时间比服务器时间(北京时间)多 20 个小时!!!!!!!! 本帖最后由 default7 于 2010-09-05 09:35:36 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看看这个结果:<?phpecho date_default_timezone_get();?>另外,最好date_default_timezone_set('Asia/Shanghai') 不行啊,文件 t4.php 全部源码如下:<?//当前正确的北京时间:2010-09-05 09:41:40echo date_default_timezone_get(); //输出UTCecho date("Y-m-d H:i:s"); //输出 2010-09-05 21:41:40date_default_timezone_set('Asia/Shanghai');echo date("Y-m-d H:i:s");//输出 2010-09-06 05:41:40echo date_default_timezone_get(); //输出 Asia/Shanghaiecho date("Y-m-d H:i:s");//输出 2010-09-06 05:41:40?>将 t4.php 放入我那个美国的主机里面:<?//当前正确的北京时间:2010-09-05 09:44:12echo date_default_timezone_get(); //输出:UTCecho date("Y-m-d H:i:s"); //输出 2010-09-05 01:44:12date_default_timezone_set('Asia/Shanghai');echo date("Y-m-d H:i:s");// 输出 2010-09-05 09:44:12echo date_default_timezone_get();//输出 Asia/Shanghaiecho date("Y-m-d H:i:s");//输出 2010-09-05 09:44:12?>美国主机的信息IIS:Microsoft-IIS/6.0 PHP:PHP Version 5.2.11系统:Windows NT AT16-7116 5.2 build 3790 浙江主机的信息:IIS:Microsoft-IIS/6.0 PHP:PHP Version 5.2.14系统:Windows NT SVCTAG-JQ22X2X 5.2 build 3790 将文件asp.asp 分别都放入美国的那个主机 和浙江的主机。他们输出的时间都是正确的。asp.asp 文件源码:<%=Now()%>美国主机(圣安娜机房)的和浙江机房的输出的时间都是正确的北京时间。有人遇到过这样的情况吗??为什么会这样 date_default_timezone_set('Asia/Shanghai');echo date("Y-m-d H:i:s");// 输出 2010-09-05 09:44:12一般就用这个吧,我没遇到过意外哦 大家多帮我想想可能的原因,浙江机房上面的这个PHP是我自己安装的。但是我是按照步骤安装的,并没有其他的设置啊 function_exists('date_default_timezone_set') 看下结果 文件 funcE.php 全部源码(其实是绝对存在此函数,不然2楼t4.php文件中date_default_timezone_get()不可能会输出“Asia/Shanghai”):<?phpecho function_exists('date_default_timezone_set') ? 1:2;//输出 1?>但,而且不设置任何时区,时间已经是比北京时间多 12 小时了,用了date_default_timezone_set('Asia/Shanghai');比北京时间多 20 小时。 很纠结,默认是UTC是正确的,应该比北京时间少8个小时。。可是你的这个差距好大 是的,我难道是我安装PHP,安装错误了?如果安装错误了,那么为什么PHP程序又可以运行?而是单单时间出问题?安装我是使用官网下载的直接解压缩的PHP安装的。心酸啊~~~别人都是比北京时间晚 8 小时,而我却比北京时间快 12 小时,用了date_default_timezone_set('Asia/Shanghai'); 反而更悲剧,比北京时间快12 + 8 ,总共快20小时。悲剧太悲剧了,现在还没有头绪。。~~~~~~~~ 用你的代码在我的电脑试 是没有问题的我的也是iis + php 重新安装一次 网站正在使用中,公司的。中断网站的话不知道会怎样啊。竟然出现这样的问题如果重新安装的话,原先的如何卸载。貌似就是直接删除C:\PHP 还有复制到C:\WINDOWS\里面的东西,我记得我有些.dll文件既复制到了 C:\WINDOWS 下面也复制到了 C:\WINDOWS\SYSTEM_32\ 下面去了。如果我直接找到这些不该复制过去的.DLL文件,然后直接删除,不知道会怎么样。 没人知道吗?IIS下PHP如何重装? C:\WINDOWS下不是只有php.ini删除C:\PHPC:\WINDOWS\SYSTEM_32\php用到的dll 然后像你装的那样再重一次 (我的PHP安装在C:\PHP)我在网上搜索 XP IIS 下PHP的配置的文章,内容描述都是不一样。我记得我装这个的时候复制了几个.DLL文件到C:\WINDOWS\ 下,而不是C:\WINDOWS\SYSTEM_32\下面。然后再把他们复制到了C:\WINDOWS\SYSTEM_32\下面。反正那个时候复制的时候有点乱,我今天查阅一本PHP教程书籍,上面写的是复制C:\PHP\下的所有的.DLL文件到C:\WINDOWS\SYSTEM_32\下面。不是很理解:1.C:\PHP\目录下的所有的.DLL文件都复制到C:\WINDOWS\SYSTEM_32\下面对吗?2.C:\PHP\ext 目录下的.DLL也是复制到C:\WINDOWS\SYSTEM_32下面对吗?(这个里面应该是选择性复制的)3.复制到C:\WINDOWS\目录下的仅C:\PHP\php.ini这个文件对吗?C:\PHP\目录下其他的任何都不复制到C:\WINDOWS\目录下对吗?其他的就是.DLL文件复制到C:\WINDOWS\SYSTEM_32\目录下。 本帖最后由 xuzuning 于 2010-09-05 15:10:43 编辑 Fatal error: Call to undefined function gm_date() 不好意思是我写错了是 gmdate 文件t4.php全部源码及其运行结果:<?php//当前北京时间 2010-09-05 15:12:13//当前服务器电脑时间 2010-09-05 15:12:13echo date_default_timezone_get(); //输出 UTCecho date("Y-m-d H:i:s"); //输出 2010-09-06 03:12:13echo gmdate("Y-m-d H:i:s"); //输出 2010-09-06 03:12:13date_default_timezone_set('Asia/Shanghai');echo date("Y-m-d H:i:s"); //输出 2010-09-06 11:12:13echo gmdate("Y-m-d H:i:s"); //输出 2010-09-06 03:12:13echo date_default_timezone_get(); //输出 Asia/Shanghaiecho date("Y-m-d H:i:s"); //输出 2010-09-06 11:12:13echo gmdate("Y-m-d H:i:s"); //输出 2010-09-06 03:12:13?> 还是不行啊,感觉太奇怪了。假如PHP安装错误的话,那么为何单独是时间出问题,而其他的不出问题呢?另外我安装的方法就是 #16 楼的方法,帮我看下我安装方法错了吗?因为我安装的时候我记得我复制了C:\PHP\目录下的几个.DLL文件到C:\WINDOWS\里面,然后又复制到了C:\WINDOWS\SYSTEM_32\下面,当不是C:\PHP\目录下所有的.DLL文件都复制过去了。 本帖最后由 xuzuning 于 2010-09-06 06:59:49 编辑 环境变量是指“我的电脑”→“属性”→“高级”→“环境变量”→“系统变量”→“Path”这个里面的吗?我安装PHP的时候并没有配置这两个。 如果时区错了,怎么解释asp的代码输出的是"看似正确的北京时间"? 这会很简单,vbs并没有与时区相关的函数。比尔盖兹总是假定你使用的是你的祖国有关的设定 你用什么服务器的, 输出一个服务器内置的时间来看看, 别用php的时间 我在MySQL 数据库里面查询“select now()”,输出的时间是和北京时间是一样的。其他的我不知道如何输出 服务器电脑的时间。 据我所知除了php5,其他各种计算机语言(包括数据库)输出的都是机器时间而这个机器时间是可以任意调整的 如果论题成立, 按31楼的测试方法, 如果php输出的和mysql的时间不一样, 那就判定是本身php设置问题了 sae的curl限制能否突破? mysql_connect問題 php连接MySQL的问题 在php中能否调用 .net写的remoting服务 有谁遇到 php读取excel 的问题 ? 如何让php带搜索条件分页 The specified CGI application misbehaved by not returning a complete set of HTTP headers.这是什么意思? 郁闷!fsockopen函数打开的时候有问题 请问各位,如何才能够知道访问者是从哪里或哪个页面访问来的? help me!!!请问各位大侠:如何把调查结果输出成圆饼式的,现在大多作成亮条式的,php如何实现呢?thank you !!! php连接数据库服务器,创建数据库问题 memcache常量MEMCACHE_COMPRESSED压缩比率应该设置成多少
<?php
echo date_default_timezone_get();
?>另外,最好date_default_timezone_set('Asia/Shanghai')
echo date("Y-m-d H:i:s"); //输出 2010-09-05 21:41:40date_default_timezone_set('Asia/Shanghai');
echo date("Y-m-d H:i:s");//输出 2010-09-06 05:41:40
echo date_default_timezone_get(); //输出 Asia/Shanghai
echo date("Y-m-d H:i:s");//输出 2010-09-06 05:41:40?>
将 t4.php 放入我那个美国的主机里面:<?//当前正确的北京时间:2010-09-05 09:44:12
echo date_default_timezone_get(); //输出:UTC
echo date("Y-m-d H:i:s"); //输出 2010-09-05 01:44:12date_default_timezone_set('Asia/Shanghai');
echo date("Y-m-d H:i:s");// 输出 2010-09-05 09:44:12
echo date_default_timezone_get();//输出 Asia/Shanghai
echo date("Y-m-d H:i:s");//输出 2010-09-05 09:44:12?>
美国主机的信息IIS:Microsoft-IIS/6.0
PHP:PHP Version 5.2.11
系统:Windows NT AT16-7116 5.2 build 3790
浙江主机的信息:IIS:Microsoft-IIS/6.0
PHP:PHP Version 5.2.14
系统:Windows NT SVCTAG-JQ22X2X 5.2 build 3790
他们输出的时间都是正确的。asp.asp 文件源码:<%=Now()%>
美国主机(圣安娜机房)的和浙江机房的输出的时间都是正确的北京时间。
有人遇到过这样的情况吗??为什么会这样
echo date("Y-m-d H:i:s");// 输出 2010-09-05 09:44:12
一般就用这个吧,我没遇到过意外哦
但是我是按照步骤安装的,并没有其他的设置啊
文件 funcE.php 全部源码(其实是绝对存在此函数,不然2楼t4.php文件中date_default_timezone_get()不可能会输出“Asia/Shanghai”):<?php
echo function_exists('date_default_timezone_set') ? 1:2;
//输出 1
?>但,而且不设置任何时区,时间已经是比北京时间多 12 小时了,
用了date_default_timezone_set('Asia/Shanghai');比北京时间多 20 小时。
是的,我难道是我安装PHP,安装错误了?如果安装错误了,那么为什么PHP程序又可以运行?而是单单时间出问题?安装我是使用官网下载的直接解压缩的PHP安装的。心酸啊~~~别人都是比北京时间晚 8 小时,而我却比北京时间快 12 小时,
用了date_default_timezone_set('Asia/Shanghai'); 反而更悲剧,比北京时间快12 + 8 ,总共快20小时。悲剧太悲剧了,现在还没有头绪。。~~~~~~~~
我的也是iis + php 重新安装一次
网站正在使用中,公司的。中断网站的话不知道会怎样啊。
竟然出现这样的问题
如果重新安装的话,原先的如何卸载。
貌似就是直接删除C:\PHP 还有复制到C:\WINDOWS\里面的东西,我记得我有些.dll文件既复制到了 C:\WINDOWS 下面也复制到了 C:\WINDOWS\SYSTEM_32\ 下面去了。
如果我直接找到这些不该复制过去的.DLL文件,然后直接删除,不知道会怎么样。
删除C:\PHP
C:\WINDOWS\SYSTEM_32\php用到的dll
然后像你装的那样再重一次
我在网上搜索 XP IIS 下PHP的配置的文章,内容描述都是不一样。
我记得我装这个的时候复制了几个.DLL文件到C:\WINDOWS\ 下,而不是C:\WINDOWS\SYSTEM_32\下面。然后再把他们复制到了C:\WINDOWS\SYSTEM_32\下面。反正那个时候复制的时候有点乱,我今天查阅一本PHP教程书籍,上面写的是复制C:\PHP\下的所有的.DLL文件到C:\WINDOWS\SYSTEM_32\下面。不是很理解:1.C:\PHP\目录下的所有的.DLL文件都复制到C:\WINDOWS\SYSTEM_32\下面对吗?
2.C:\PHP\ext 目录下的.DLL也是复制到C:\WINDOWS\SYSTEM_32下面对吗?(这个里面应该是选择性复制的)
3.复制到C:\WINDOWS\目录下的仅C:\PHP\php.ini这个文件对吗?C:\PHP\目录下其他的任何都不复制到C:\WINDOWS\目录下对吗?其他的就是.DLL文件复制到C:\WINDOWS\SYSTEM_32\目录下。
Fatal error: Call to undefined function gm_date()
文件t4.php全部源码及其运行结果:<?php//当前北京时间 2010-09-05 15:12:13
//当前服务器电脑时间 2010-09-05 15:12:13
echo date_default_timezone_get(); //输出 UTC
echo date("Y-m-d H:i:s"); //输出 2010-09-06 03:12:13
echo gmdate("Y-m-d H:i:s"); //输出 2010-09-06 03:12:13
date_default_timezone_set('Asia/Shanghai');
echo date("Y-m-d H:i:s"); //输出 2010-09-06 11:12:13
echo gmdate("Y-m-d H:i:s"); //输出 2010-09-06 03:12:13echo date_default_timezone_get(); //输出 Asia/Shanghai
echo date("Y-m-d H:i:s"); //输出 2010-09-06 11:12:13
echo gmdate("Y-m-d H:i:s"); //输出 2010-09-06 03:12:13
?>
还是不行啊,感觉太奇怪了。
假如PHP安装错误的话,那么为何单独是时间出问题,而其他的不出问题呢?
另外我安装的方法就是 #16 楼的方法,帮我看下我安装方法错了吗?因为我安装的时候我记得我复制了C:\PHP\目录下的几个.DLL文件到C:\WINDOWS\里面,然后又复制到了C:\WINDOWS\SYSTEM_32\下面,当不是C:\PHP\目录下所有的.DLL文件都复制过去了。
环境变量是指“我的电脑”→“属性”→“高级”→“环境变量”→“系统变量”→“Path”这个里面的吗?
我安装PHP的时候并没有配置这两个。
如果时区错了,怎么解释asp的代码输出的是"看似正确的北京时间"?
我在MySQL 数据库里面查询“select now()”,输出的时间是和北京时间是一样的。
其他的我不知道如何输出 服务器电脑的时间。
而这个机器时间是可以任意调整的
如果论题成立,
按31楼的测试方法, 如果php输出的和mysql的时间不一样, 那就判定是本身php设置问题了