-1

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

$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;

我得到这个错误:

致命错误:未捕获的异常 'Exception' 带有消息 'DateTime::__construct() [datetime.--construct]:无法在位置 6 (9) 解析时间字符串 (2013-19-01 01:40:23):意外/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 中抛出

我看不出意外的字符是什么,因为时间戳对我来说看起来不错。

4

1 回答 1

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'));
于 2013-01-19T01:45:36.403 回答