繁体   English   中英

php:使用“日期”功能从给定日期开始的星期几:比预期答案提前一天

[英]php: day of the week from given date using “date” function: getting one day ahead of expected answer

我几天前才刚开始使用php。 我正在尝试获取特定日期的星期几。

$firstmonthdate = strtotime("7/1/2015");
//print what my timezone is, for clarity's sake for this question
$myTimezone = date_default_timezone_get(); 
echo $myTimezone."\n"."first day = ".date("r",$firstmonthdate);

我得到此代码的以下输出:

Asia/Singapore
first day = Wed, 01 Jul 2015 00:00:00 +0800

到现在为止还挺好。 我的问题在下一行代码中:

echo "first day = ". strtolower(date("D",$firstmonthdate))."\n";

这行代码的输出是:

first day = thu

如上所示,正确的答案是wed但我越来越thu ,完全感到困惑。 这可能是由于新加坡与格林尼治标准时间之间的时区差异,但是我无法弄清楚为什么以及如何解决它。 如上所示,我已经正确设置了本地时区,并且正在通过本地笔记本电脑上的CLI界面运行该时区。 本地网络服务器也正在拾取相同的php.ini文件。

对这里出什么问题有什么建议吗?

非常感谢。

这是因为您的变量中有错字

echo "first day = ". strtolower(date("D",$firsmonthdate))."\n";
                                             ^^

相反,它应该是

echo "first day = ". strtolower(date("D",$firstmonthdate))."\n";
                                             ^^

如果您的error_reporting处于打开状态,那么您将收到一个Notice: Undefined variable: firsmonthdate

您需要注意php中的日期。 在这里,您得到的日期是1970-01-01 ,如果将其用于其他表示形式,则其日期为Thu, 01 Jan 1970 00:00:00 +0000

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM