Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.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_Date_Formatting_Strtotime - Fatal编程技术网

php中的日期格式,意外结果

php中的日期格式,意外结果,php,date,formatting,strtotime,Php,Date,Formatting,Strtotime,脚本如下: <?php $postedDate = "Sat May 11 2013 20:36:24 GMT-0700 (PDT)"; $date = date('Y-m-d H:i:s', strtotime($postedDate)); echo json_encode($date); ?> 我希望并希望它返回以下值: "2013-05-12 03:36:24" "2013-05-11 20:36:24" 有什么想法吗?试试这个: $str = 'Sat May 11

脚本如下:

<?php
$postedDate = "Sat May 11 2013 20:36:24 GMT-0700 (PDT)";
$date  = date('Y-m-d H:i:s', strtotime($postedDate));

echo json_encode($date);
?>
我希望并希望它返回以下值:

"2013-05-12 03:36:24"
"2013-05-11 20:36:24"
有什么想法吗?

试试这个:

$str = 'Sat May 11 2013 20:36:24 GMT-0700 (PDT)';
$date  = date('Y-m-d H:i:s',strtotime('-7 hours',strtotime($str)));

echo json_encode($date);
或者使用
date\u default\u timezone\u set
正确设置时区

删除
GMT-0700(PDT)
,然后再试一次,您将获得所需的结果

$postedDate = "Sat May 11 2013 20:36:24";
$date  = date('Y-m-d H:i:s', strtotime($postedDate));

echo json_encode($date);

这一切都是因为
GMT-0700
。从约会中删除它,你会得到你想要的结果。谢谢你。我删除了“GMT-0700(PDT)”并得到了预期的结果。如果你想把它作为一个答案,我当然会接受它。我实际上需要删除(PDT)以获得想要的结果。如果你做了编辑,我会检查的。时区是一个更好的解决方案。。。如果他切换到另一个时区的主机,那么在日期上截断一个固定值将导致更多的混乱。