2012-01-20 2 views
0

Эй, я делал тест на PHP и MySQL ...MySql CURRENT_TIMESTAMP

Я использовал CURRENT_TIMESTAMP, чтобы следить за временем, чтобы пользователи ответить на конкретные вопросы. Теперь я хотел бы распечатать время, и я сделал строку в моей базе данных под названием «timestamp».

Он отлично работает для отслеживания ответили первые пользователи, но когда я эхо из строки, это выглядит следующим образом:

2012-01-11 17:14:50 

Так что мой вопрос:

Как разорвать этот в Время и дата?

У меня не может быть 2 строки в моей базе данных для хранения времени, потому что, как я уже сказал, я использую CURRENT_TIMESTAMP, чтобы отслеживать, какие пользователи ответили в первую очередь.

Способ, которым он распечатан сейчас, не очень приятно смотреть, и с ним работать не очень удобно.

Надежда кто-нибудь может помочь,

Большое спасибо за чтение.

Mathias.

+0

может понадобиться добавить мс время, если вы используете его, чтобы определить, кто первым ответил. – Erik

+0

Зачем вам когда-нибудь хотеть разбить дату и время? Они оба необходимы для определения действительности, когда что-то произошло, и я никогда не видел достаточной причины для их хранения отдельно. Если вы просто хотите отображать их отдельно, сделайте это вместо этого. База данных предназначена для хранения данных. Форматирование и то, что не должно обрабатываться вашим приложением, вообще говоря. – Brad

+1

Попробуйте 'echo date ('m/d/y', strtotime ($ yourVariable));« Извините, я ввел формат даты в США, не знаю, где вы, но вы можете создать свою собственную маску, посмотрев здесь http://php.net/manual/en/function.date.php – AlexC

ответ

0

Это звучит, как вы просто хотите DateTime отформатированный в эстетически приятным способом. Посмотрите этот сайт: http://www.mysqlformatdate.com/ для всех видов форматов и найдите то, что вам больше нравится, и добавьте его в свой оператор select.

+1

Я бы пошел с документацией MySQL по этому сайту. – ceejayoz

+0

Как и я, но очевидно, что автор является новым, и документация MySQL (или любая из документации RDBMS, если на то пошло) может быть довольно сложной. Сайт поможет им увидеть, что делают маска разных форматов и как их использовать, и дать им образец sql, чтобы показать им, как использовать его в отдельных операторах. Именно по этой причине я рекомендовал его для Автора. – jworrin

+0

Этот сайт действительно помог! У меня нет проблем с этим, спасибо! –

0

Вы можете форматировать его так, как вам нравится, используя DATE_FORMAT function MySQL, или вы можете использовать функцию strtotime PHP, чтобы преобразовать ее в временную метку Unix и затем использовать функцию date.

mysql> SELECT DATE_FORMAT('2009-10-04 22:23:00', '%W %M %Y'); 
     -> 'Sunday October 2009' 

или:

print date('l F Y', strtotime('2009-10-04 22:23:00')); 
     -> 'Sunday October 2009' 
0

Я всегда хотел, чтобы получить временную метку UNIX из MYSQL так в вашем SQL запросе сделать:

SELECT UNIX_TIMESTAMP(time) as time FROM table 

где time это имя столбца, то в PHP:

$in_format_time = date("H:i d M Y T",$time); 
echo $in_format_time; 

где $time был выбран результат. В результате вы получите следующее: 19:00 01 января 1970 года по Гринвичу.

Но вы можете играть с вами формате в функции даты, посмотрите здесь:

http://php.net/manual/en/function.date.php

0

DATE_FORMAT(NOW(),'%W, %M %e, %Y @ %h:%i %p')

yields 'Sunday, September 20, 2008 @ 12:45 PM'

MySQL DATE_FORMAT() Letter Representations 
Specifier Description 
%a   Abbreviated weekday name (Sun..Sat) 
%b   Abbreviated month name (Jan..Dec) 
%c   Month, numeric (0..12) 
%D   Day of the month with English suffix (0th, 1st, 2nd, 3rd, …) 
%d   Day of the month, numeric (00..31) 
%e   Day of the month, numeric (0..31) 
%f   Microseconds (000000..999999) 
%H   Hour (00..23) 
%h  Hour (01..12) 
%I  Hour (01..12) 
%i  Minutes, numeric (00..59) 
%j  Day of year (001..366) 
%k  Hour (0..23) 
%l  Hour (1..12) 
%M  Month name (January..December) 
%m  Month, numeric (00..12) 
%p  AM or PM 
%r  Time, 12-hour (hh:mm:ss followed by AM or PM) 
%S  Seconds (00..59) 
%s  Seconds (00..59) 
%T  Time, 24-hour (hh:mm:ss) 
%U  Week (00..53), where Sunday is the first day of the week 
%u  Week (00..53), where Monday is the first day of the week 
%V  Week (01..53), where Sunday is the first day of the week; used with %X 
%v  Week (01..53), where Monday is the first day of the week; used with %x 
%W  Weekday name (Sunday..Saturday) 
%w  Day of the week (0=Sunday..6=Saturday) 
%X  Year for the week where Sunday is the first day of the week, numeric, four digits; used with %V 
%x  Year for the week, where Monday is the first day of the week, numeric, four digits; used with %v 
%Y  Year, numeric, four digits 
%y  Year, numeric (two digits) 
%%  A literal “%” character 
%x   x, for any “x” not listed above 
Смежные вопросы