@Testin

Как перевести MySQL timestamp в секунды?

Есть поле типа timestamp в MySQL 5.5.35. Но при выборке возвращает оно не дату в секундах, а дату типа "2014-03-06 15:22:21". В phpMyAdmin отображается также.
Данные получаются с помощью ORM (Kohana).
Как можно по умолчанию получать в секундах?
Или хранить в int?
  • Вопрос задан
  • 6144 просмотра
Пригласить эксперта
Ответы на вопрос 4
svd71
@svd71
попробуйте так:

SELECT UNIX_TIMESTAMP('2014-03-06 15:22:21');
Ответ написан
@Vampiro
Ответ написан
Комментировать
AmberLEX
@AmberLEX
php/web-developer
1. Если нужно в секундах, можете хранить в int(10) unsigned NULL (в стандартном дампе для модуля авторизации так и хранятся значения created и updated)
2. Если использовать DB::expr, то поможет для ОРМ в случае UNIX_TIMESTAMP (примерно как тут)
3. Посмотрите здесь - думаю найдете то, что нужно, я подробнее расписал для дат.
Ответ написан
Комментировать
denisandroid
@denisandroid
BASH ,PHP , MYSQL, C++, JAVA . (PHP, JAVA,MYSQL)
Используйте strtotime, на php, но надо чтобы было в формате Y-m-d H:i:s.
Вот например:
$time='2015-07-17 17:06:29';
$time=strtotime(date('Y-m-d H:i:s')) - strtotime($time);
И выходит что мы узнаем разницу, сколько прошло секунд, с даты которая в $time (в вашем случае там дата с mysql).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы