【发布时间】:2014-02-04 00:00:12
【问题描述】:
这是我试图返回当前日期/时间的一段代码。
<?php
date_default_timezone_set('America/Chicago');
$now = date('Y-m-dTH:i:s.00+00:00');
echo $now;
?>
如您所见,我在末尾添加了一些字符,并在日期和小时之间添加了一个“T”。这是为了匹配我必须遵循的非常具体的格式,因为这个日期将直接传输到需要这种非常具体格式的数据的网络服务:
2014-01-31T15:05:29.04+00:00
如您所见,此示例中的“T”代表时间。我同意,Web 服务开发人员的错误选择,但这无法更改。
问题是,当 PHP 读取我的示例代码时,它会在我的大写“T”处插入 CST(时区),从而导致问题,因为它破坏了我试图实现的格式:
2014-02-03CST17:53:16.00+00:00
我需要能够在没有 PHP 函数将其转换为时区的情况下插入 T。
有什么想法吗?
【问题讨论】:
-
用
\T转义T。 -
如果您希望使用固定的
+00:00时区偏移量(或将时区设置为UTC),请不要忘记使用函数gmdate()而不是date()。
标签: php date time timezone format