2013-03-19 2 views
-2

Я сохранил time() строки в мою базу данных, как 1363694642
Теперь я просто хочу, чтобы распечатать это жало Как 19-03-2013 17:40:39Как форматировать время() строку для Unix Timestamp в PHP

Я уже использовал date('d-M-Y H:i:s', strtotime($row['time'])) но вернуть 31-Dec-1969 17:00:00 в каждый запрос

Просьба помочь мне решить эту проблему.

+0

Вы ошибаетесь ... Значение времени, как '1363694642' производится в' времени() 'функция ** есть ** эпоха (unix). – Lix

ответ

5

date функция требует метку времени, так что вам не придется использовать strtotime, потому что уже имеет временную метку из базы данных:

date('d-m-Y H:i:s', $row['time']) 

Обратите внимание, что я заменил M с m в строке формата , Это потому, что M означает Короткое текстовое представление месяца, три буквы и вы хотите просто номер.

+0

Большое спасибо, и я просто манипулировал здесь DEC с 19 - ** 12 ** - 2013 – RajSar

0

просто использовать этот

date('d-M-Y H:i:s', $row['time']); 
+0

Да, это работает ... Спасибо. – RajSar

0

вам не нужно будет использовать функцию StrToTime как время() возвращают само значение временной метки:

Использование: date('d-m-Y H:i:s', $row['time'])

для более пройти через http://php.net/manual/en/function.date.php

+1

Как этот ответ отличается от моего? :) – MarcinJuraszek

+0

@ MarcinJuraszek: Извините, я не заметил, что вы уже опубликовали то же самое. –

0

MySQL может уже сделать это за вас:

SELECT FROM_UNIXTIME(`time`) 
FROM ... 

Или:

SELECT FROM_UNIXTIME(`time`, '%D-%M-%Y %h:%i:%s') 
FROM ... 

Смотрите также: FROM_UNIXTIME

Смежные вопросы