2

How do I get PHP Date Time from a JSON?

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

$content['date'] need to be smomething like $date = new DateTime();

JSON looks like :

{
    "date" : "2017-02-15 15:20:14"
}
Alive to die - Anant
  • 70,531
  • 10
  • 51
  • 98
Kevin Liss
  • 136
  • 1
  • 3
  • 15

2 Answers2

3

The date you're getting from JSON is coming in as a string, so you'll need to build a DateTime object from that string. As long as the string is in a format recognised by PHP's date and time formats (http://php.net/manual/en/datetime.formats.php) you can do it very simply as follows:

$date = new DateTime($content['date']);
DRCSH
  • 29
  • 1
  • 2
3

I assume that echo "<pre/>";print_r($content); is given data like below:-

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

So do like below:-

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');

Output:-https://eval.in/738434

Alive to die - Anant
  • 70,531
  • 10
  • 51
  • 98
  • 1
    important to know: if `$content['date']` is `null` for any reason or not in a correct format, `DateTime()` will most probably provide you with an unexpected date (e.g. for null it's now). – LBA Feb 16 '17 at 13:08