Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php实时拼图-夏令时? PHP代码 输出 问题:_Php_Time_Strtotime_Dst - Fatal编程技术网

php实时拼图-夏令时? PHP代码 输出 问题:

php实时拼图-夏令时? PHP代码 输出 问题:,php,time,strtotime,dst,Php,Time,Strtotime,Dst,芝加哥的时区是UTC-5,为什么我得不到结果是2012-09-20T22:00:00-05:00?这并不能真正回答我的问题,但我做了以下工作来解决它: date_default_timezone_set('America/Chicago'); $t = strtotime( '2012-09-21T03:00:00+00:00' ); $t2 = date('c',$t); echo $t2; 输出:2012-09-20T22:00:00-05:00strotime转换为Unix时间戳日期将

芝加哥的时区是UTC-5,为什么我得不到结果是
2012-09-20T22:00:00-05:00

这并不能真正回答我的问题,但我做了以下工作来解决它:

date_default_timezone_set('America/Chicago');
$t = strtotime( '2012-09-21T03:00:00+00:00' );
$t2 =  date('c',$t);
echo $t2;

输出:
2012-09-20T22:00:00-05:00
strotime
转换为Unix时间戳<代码>日期将使用当前时区将时间戳转换为字符串。试着先设置你的时区

$t = strtotime( '2012-09-21T03:00:00+00:00 America/Chicago' );
date_default_timezone_set('America/Chicago');
$t2 =  date('c',$t);
echo $t2;

欢迎来到DST。这比埃文德·霍利菲尔德的支票簿还贵。我们在同一时间发布。:)+1.如果您没有设置默认时区,当前版本的PHP甚至会警告您。
date_default_timezone_set('America/Chicago');
$t = strtotime( '2012-09-21T03:00:00+00:00' );
$t2 =  date('c',$t);
echo $t2;
$t = strtotime( '2012-09-21T03:00:00+00:00 America/Chicago' );
date_default_timezone_set('America/Chicago');
$t2 =  date('c',$t);
echo $t2;