Как преобразовать дату в формате DDMMMYYYY в сохраняемую дату в БД - PullRequest
1 голос
/ 09 августа 2010

Привет, ребята, мое приложение анализирует текстовые файлы, в которых значения даты хранятся в формате: DDMMMYYYY, например: 12MAR2009.

Я заметил, что вставка этого значения в том виде, как оно есть в значении даты и времени базы данных, вообще не работает,Как мне преобразовать это в значение datetime, которое можно ввести в базу данных.Мое приложение в php.

Ответы [ 2 ]

3 голосов
/ 09 августа 2010

Что-то вроде этого должно преобразовать вашу дату в MySQL в формате DATETIME :

$date = new DateTime('12MAR2009', new DateTimeZone('America/New_York'));
$mysql_date = $date->format('Y-m-d H:i:s');

Вы можете использовать strtotime(), но обработка часового пояса с ним довольно трудна.*

2 голосов
/ 09 августа 2010
$timestamp = strtotime("12MAR2009");

...

INSERT INTO my_table (..., timestamp) VALUES (..., FROM_UNIXTIME($timestamp))

Функция PHP strtotime() будет принимать практически любую строку, содержащую значение даты / времени, и преобразовывать ее в метку времени Unix.

Функция MySQL FROM_UNIXTIME() возьмет метку времени Unix и преобразует ее в формат даты и времени MySQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...