Подготовьте строковую дату для вставки MySQL с помощью PHP - PullRequest
2 голосов
/ 14 декабря 2011

Задать дату в виде строки типа «12 октября 2010»?

Должен ли быть какой-либо тип даты, к которому я должен был бы конвертировать. Или это просто вопрос преобразования ее в другую строку, отформатированную как «2010-10-12». Если это так, какой самый простой способ преобразования в формат гггг-мм-дд, учитывая мой начальный формат?

Ответы [ 2 ]

6 голосов
/ 14 декабря 2011

Да, поля DATE в MySQL просто должны быть строкой в ​​правильном формате. Чтобы преобразовать дату в нужный формат, используйте date в сочетании с strtotime.

$date = 'October 12, 2010';
$sqlDate = date('Y-m-d', strtotime($date)); // 2010-10-12

Примечание: 'Y-m-d' - для поля DATE, если вы используете DATETIME, используйте 'Y-m-d H:i:s'.

2 голосов
/ 14 декабря 2011
$date = new DateTime('October 12, 2010');
$sqldate = $date->format('Y-m-d');

DateTime - это PHP 5> = 5.2.0

Вы также можете использовать strtotime(), однако это может привести к разрыву, если вы хотите использовать дату в далеком будущем (в 32-битных системах).

...