【问题标题】:PHP Command Line & Browser Returning Different ResultsPHP 命令行和浏览器返回不同的结果
【发布时间】:2012-01-21 02:06:28
【问题描述】:

在浏览器和命令行中运行脚本时遇到问题。在浏览器中运行时,脚本回显日期为 1/20/2012,但是在命令提示符下运行时,它回显的明天日期为 2012 年 1 月 21 日。我已将我的时区设置为

date.timezone = America/New_York

我在命令行中运行这个脚本:

"c:\wamp\bin\php\php5.3.4\php.exe" -f "c:\wamp\www\site.com\cron.php"

关于为什么我从同一个脚本中得到两个不同的日期有什么想法吗?

【问题讨论】:

  • 这只是一个猜测,但是当 WAMP 版本使用您的 Windows 时间设置时,PHP 的 CLI SAPI 可能正在访问系统时钟以确定时间?这里不太确定。 WAMP/windows 有时使用 PHP 会变得很时髦。如果您在运行时使用date_default_timezone_set(); 设置时区,是否会发生同样的事情???
  • 我想我明白了,我很惊讶更多的人没有遇到这类问题。 WAMP 有它自己的 PHP.ini 文件,该文件位于 Apache bin DIR 中。然而,PHP.exe 使用的命令外壳默认 PHP.ini 与..PHP.exe 位于同一目录中。愚蠢的 WAMP!
  • 另外,通常系统会提供 2 个 php.ini 文件,一个用于命令行,另一个用于 Web 服务器。

标签: wamp php


【解决方案1】:

检查你的 Apache 和命令行是否有相同的 PHP。并且都使用相同的 php.ini 文件。

【讨论】:

    【解决方案2】:

    php-cli, php-cgi, & php-fpm 默认使用不同的php.ini 文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-13
      • 2017-09-25
      • 2016-03-18
      • 2016-11-17
      • 1970-01-01
      • 2020-02-27
      • 1970-01-01
      相关资源
      最近更新 更多