2
我在浏览器中运行脚本而不是命令行时遇到问题。在浏览器中运行脚本echo的日期为2012年1月20日,但在命令提示符下运行时,它的回声的日期为2012年1月21日。我有我的时区设置为PHP命令行和浏览器返回不同结果
date.timezone = America/New_York
我在命令行中运行此脚本:
"c:\wamp\bin\php\php5.3.4\php.exe" -f "c:\wamp\www\site.com\cron.php"
为什么我来自同一个脚本得到两个不同的日期的任何想法?
这只是一个猜测,但可能PHP的CLI SAPI访问系统时钟来确定WAMP版本使用Windows时间设置的时间?这里不太确定。有时使用PHP,WAMP/windows可能会变得时髦。如果使用'date_default_timezone_set();'在运行时设置时区,是否会发生同样的情况? – rdlowrey
我想我明白了这一点,我很惊讶更多的人不会遇到这种类型的问题。 WAMP拥有自己的PHP.ini文件,位于Apache bin DIR中。但PHP.exe使用的命令shell默认PHP.ini与..PHP.exe位于同一目录中。愚蠢的WAMP! –
此外,系统通常会提供2个php.ini文件,一个用于命令行,另一个用于Web服务器。 – quickshiftin