Получение времени следующим образом в результате JSon от Google API:Php надлежащее время преобразования для MySQL
2014-08-25T20:02:24.000Z
как преобразовать и подготовить его к MySQL datetime
поле?
Получение времени следующим образом в результате JSon от Google API:Php надлежащее время преобразования для MySQL
2014-08-25T20:02:24.000Z
как преобразовать и подготовить его к MySQL datetime
поле?
$dateTime=new DateTime('2014-08-25T20:02:24.000Z');
echo $dateTime->format('Y-m-d H:i:s') ;
выходы, как
2014-08-25 20:02:24mysql DATETIME format
В качестве простого ISO 8601 представления оно almost what MySQL understands. Единственное, что является проблематичной проблемой, это «Z», поскольку MySQL не поддерживает часовые пояса и не игнорирует «Z».
Таким образом, просто немного поднимите формат (это не общее решение для всех дат, но оно делает настоящим действительным решением для этой проблемы, когда дата не используется или не проверена до SQL);
$iso = "2014-08-25T20:02:24.000Z"; // literal JSON text
$iso = preg_replace("/Z$/", "", $iso); // -> "2014-08-25T20:02:24.000"
И вставьте его в MySQL как нормальный (with placeholders) как струна;
$msqli_stmt->bind_param("s", $iso);
$pdo_stmt->bindValue(":dt", $iso);
Рассмотрите этот пример SQL;
create table x (y datetime)
insert into x (y) values ('2014-08-25T20:02:24.000')
select * from x
--> August, 25 2014 20:02:24+0000
Это ISO 8601 date. Вы можете преобразовать его непосредственно к DateTime
объекта с:
$date = new DateTime('2014-08-25T20:02:24.000Z');
Или метку времени для использования с классическими функциями времени PHP с strtotime()
:
$time = strtotime('2014-08-25T20:02:24.000Z');
После того, как вы есть, что просто превратить его в формат MySQL использует, Y-m-d H:i:s
, с помощью одного из тех, кто:
$to_mysql = $date->format('Y-m-d H:i:s');
$to_mysql = date('Y-m-d H:i:s', $time);
Установите тип столбцов данных для 'datetime' –
@LozCherone ツ и InSe rt как есть? – heron