我正在从远程服务器调用一个函数,它以 XML 格式输出我。通过用 PHP 处理它并用 JSON (json_decode) 解码它,我得到以下输出:
print_r($data);
给..
标准类对象 ( [CreatedDate] => /Date(1360641338000-0600)/ [DateOfBirth] => /Date(1360558800000-0600)/ )
我怎样才能获得CreatedDate
格式Y-m-d H:i:s
?
谢谢!
JSON 没有特定的 Date 数据类型。您正在使用的 API 似乎正在返回一个它希望您eval
在 JavaScript 中返回的字符串。
您需要处理字符串以删除Date(
and)
部分,然后拆分-
(也可能在 上+
)并从另一个上减去(或添加)。然后您可以使用标准的日期和时间函数。
通过参考 Rikesh 在他的评论中指出的另一个 SO 问题的解决方案来解决它。稍微修改一下以符合我的要求。我回答这个问题只是为了帮助一些沮丧的灵魂在这里找到解决方案。
$startDate = $data->CreatedDate;
preg_match( '/([\d]{10})/', $startDate, $matches );
$sd = date( 'Y-m-d H:i:s', $matches[0] );
$startDate = date('Y-m-d H:i:s', strtotime($sd) - 3600 * 6); //adding 6 hours to match server's time