将伦敦转换为中部时间

时间:2013-01-19 01:44:31

标签: php date datetime

尝试将伦敦转换为中心时间。这是我正在使用的脚本:

$timestamp = date('Y-d-m H:i:s');

$dt = new DateTime($timestamp, new DateTimeZone('Europe/London'));
echo $dt->format('r') . PHP_EOL;

$dt->setTimezone(new DateTimeZone('America/Chicago'));
echo $dt->format('r') . PHP_EOL;

我收到了这个错误:

  

致命错误:消息'DateTime :: __ construct()[datetime .-- construct]的未捕获异常'异常':无法解析   时间字符串(2013-19-01 01:40:23)位置6(9):意外   人物'in   /home/filevanc/public_html/scripts/cpa/control/update.php:7堆栈   追踪:#0   /home/filevanc/public_html/scripts/cpa/control/update.php(7):   DateTime-> __ construct('2013-19-01 01:4 ...',Object(DateTimeZone))#1   抛出了{main}   第7行/home/filevanc/public_html/scripts/cpa/control/update.php

我看不出那个意想不到的角色是什么,因为时间戳看起来很好。

1 个答案:

答案 0 :(得分:1)

除非突然有19个月,否则您的日期无效。 ;)

你打算这样做:

$timestamp = date('Y-m-d H:i:s');

或者,更好的是,这样做:

// $timestamp = date('Y-m-d H:i:s'); ,- don't need this anymore

$dt = new DateTime(null, new DateTimeZone('Europe/London'));