[英]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.