преобразовать временную метку mysql в mktime
Вопрос
У меня есть следующая временная метка MySQL:2009-06-23 16:21:48 Как я могу преобразовать его в формат, подобный mktime()?
Решение
Существует функция MySQL unix_timestamp
.В вашем SQL-запросе вместо прямого выбора столбца Datetime или Timestamp выполните следующее:
SELECT unix_timestamp(MyDatetimeColumn) FROM MyTable
В качестве альтернативы, если у вас уже есть строка, вы могли бы использовать функцию PHP strtotime()
.
Другие советы
ОК, Я боролся с этим целую неделю (дольше, но я сделал перерыв).
У меня есть два конкретных поля в таблицах
creationDate > timestamp > current_timestamp editDate > timestamp > current_timestamp
они заканчивали либо 31 декабря 1969 года, либо просто ничего...раздражает...очень раздражает
в запросе mysql я выполнил:
unix_timestamp(creationDate) AS creationDate unix_timestamp(editDate) AS editDate
в php convert я сделал:
$timestamp = $result_ar['creationDate']; $creationDate = date("Y-M-d (g:i:s a)", $timestamp) echo($creationDate); $editstamp = $result_ar['editDate']; $editDate = date("Y-M-d (g:i:s a)", $editstamp) echo($editDate);
это решило мою проблему для меня, вернувшись
2010-Jun-28 (5:33:39 pm) 2010-Jun-28 (12:09:46 pm)
соответственно.
Я надеюсь, что это кому-то поможет...
Вы могли бы использовать strtotime - время функция.