1

我正在从远程服务器调用一个函数,它以 XML 格式输出我。通过用 PHP 处理它并用 JSON (json_decode) 解码它,我得到以下输出:

print_r($data);给..

标准类对象 ( [CreatedDate] => /Date(1360641338000-0600)/ [DateOfBirth] => /Date(1360558800000-0600)/ )

我怎样才能获得CreatedDate格式Y-m-d H:i:s

谢谢!

4

2 回答 2

1

JSON 没有特定的 Date 数据类型。您正在使用的 API 似乎正在返回一个它希望您eval在 JavaScript 中返回的字符串。

您需要处理字符串以删除Date(and)部分,然后拆分-(也可能在 上+)并从另一个上减去(或添加)。然后您可以使用标准的日期和时间函数

于 2013-02-18T13:33:09.310 回答
0

通过参考 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
于 2013-02-18T14:01:02.997 回答