Дата синтаксического анализа DateTime с помощью PHP

#php #datetime

#php #дата и время

Вопрос:

Я хочу преобразовать эту дату «11 апреля 16:21:29.219 2019 GMT» в метку времени в PHP ,

Это мой код :

 $date = DateTime::createFromFormat('M d H:i:s.u Y' , 
date_format(new DateTime("Apr 11 16:21:29.219 2019 GMT)") ));               
$response_time = strtotime($matches[1]);
 

Но результат равен нулю ,
Любые идеи, пожалуйста?
Спасибо!

Комментарии:

1. strtotime("Apr 11 16:21:29.219 2019 GMT")

2. @AndreiLupuleasa это тоже не работает…

3. echo strtotime("Apr 11 2019 16:21:29.219 GMT");

Ответ №1:

У вас есть пара проблем, вы не должны пытаться создать DateTime объект непосредственно из строки ( DateTime::createFromFormat для этого и предназначен), и вам не хватает требуемого e символа формата, чтобы соответствовать GMT части строки. Попробуйте это:

 $date = DateTime::createFromFormat('M d H:i:s.u Y e', "Apr 11 16:21:29.219 2019 GMT");
echo $date->format('Y-m-d H:i:s.u');
 

Вывод:

 2019-04-11 16:21:29.219000
 

Демонстрация на 3v4l.org