2017-02-16 77 views
1

如何从JSON获取PHP日期时间?JSON数组到PHP日期时间

$params = array(); 
$content = json_decode($request->getContent(), true); 
if(empty($content)) 
{ 
    throw $this->createNotFoundException('JSON not send!') 
} 

$content['date']需要被smomething像$date = new DateTime();

JSON的样子:

{ 
    "date" : "2017-02-15 15:20:14" 
} 
+0

日期是通过你的JSON代码? – Sona

+0

对不起,我忘了。 JSON看起来像:{“date”:“2017-02-15 15:20:14”} –

+0

即将到来,然后直接你会访问是什么问题? – Sona

回答

1

我认为echo "<pre/>";print_r($content);给出像下面的数据: -

Array 
(
    [date] => 2017-02-15 15:20:14 
) 

所以做象下面这样: -

echo date ('Y-m-d H:i:s',strtotime($content['date'])); // normal date conversion 

echo PHP_EOL; 

$dateTime = new DateTime($content['date']); // datetime object 

echo $dateTime->format('y-m-d H:i:s'); 

输出: - https://eval.in/738434

+0

这对我有效!谢谢。 –

+0

@KevinLiss很乐意帮助你。欢呼:) :) –

+0

重要的是要知道:如果$ content ['date']'由于任何原因或者不是以正确的格式为空','DateTime()'很可能会为您提供意想不到的日期(例如现在为null)。 – LBA

0

日期你从JSON获取即将在为一个字符串,所以你需要从该字符串构建一个DateTime对象。只要字符串是由PHP的日期和时间格式(http://php.net/manual/en/datetime.formats.php)识别的格式,你可以如下做到这一点很简单:

$date = new DateTime($content['date']);