我使用date("D, m/d/Y h:i:s A T")
函数调用来获取当前日期时间,但返回的时间与我在linux bash命令中制作日期时获得的时间不同(本地时间在CST和php日期函数返回UTC中的时间)。我尝试使用$timezone = @system("date +%Z",$retval);
来获取时区,试图使用date_default_timezone_set()
函数设置本地时区。但是CST似乎不是一个有效的timezone_identifier。
简而言之,我只需要获得与本地datetime相同的日期和时间。
从http://php.net/manual/en/timezones.php
使用时区所以,对于CST使用:
<?php
date_default_timezone_set("America/Chicago");
如果只有时区缩写而没有时区id,则使用:
<?php
date_default_timezone_set(timezone_name_from_abbr("CST"));
虽然系统和PHP 应该在同一时区,但请阅读date_default_timezone_set()
的文档以手动设置时区。
注意CST是不是一个有效的时区设置。查找您所在位置的有效时区
我想我找到了一个更好的函数:timezone_name_from_abbr()