Отображение даты из базы данных MySQL - PullRequest
1 голос
/ 07 июля 2011

Я знаю, что это много в SO, но я не могу найти точное решение, в котором я нуждаюсь, поэтому, пожалуйста, потерпите меня. Когда пользователи отправляют запись в мою базу данных, я сохраняю дату и время в поле DATETIME с именем date.

Теперь, когда я повторяю дату, когда была опубликована их конкретная запись, я использую:

<p>Posted:<br /><?php echo $rsjobinfo['date'];?></p>

Конечно, это полная дата и время, и я хочу показать что-то вроде 7 июля 2011 года.

Итак, выше моего эхо-заявления я сделал это:

$date = $rsjobinfo['date'];
$date = date('j F, Y');

Который, если я отображаю $ date, отображает сегодняшнюю дату в правильном формате, но я не могу понять, как применить этот формат к дате, извлекаемой из базы данных. Если я заменю

  <p>Posted:<br /><?php echo $rsjobinfo['date'];?></p>

с

  <p>Posted:<br /><?php echo $date;?></p>

Это просто текущая дата эха (хотя и в нужном мне формате), а не дата базы данных.

Может кто-нибудь помочь?

Спасибо заранее, Dan

Ответы [ 3 ]

6 голосов
/ 07 июля 2011

Вам нужно передать правильную дату date(). См http://php.net/manual/en/function.date.php и http://php.net/manual/en/function.strtotime.php

$date = date('j F, Y', strtotime($rsjobinfo['date']));
3 голосов
/ 07 июля 2011
$date = date('j F, Y', strtotime($rsjobinfo['date']));

Для получения более подробной информации см. Следующую документацию:

2 голосов
/ 07 июля 2011

Как и предполагалось, вы должны использовать функции PHP, такие как strtotime() и date():

$date = $rsjobinfo['date'] ;
$dateToPrint = date('j F, Y', strtotime($date) ) ;
echo $dateToPrint ;

Вы также можете использовать MySQL DATE_FORMAT()функция:

$sql = "SELECT ...
             , `date`
             , DATE_FORMAT(`date`, '%e %M, %Y') AS dateToPrint 
        FROM 
            ...
       " ;

$dateToPrint = $rsjobinfo['dateToPrint'] ;
echo $dateToPrint ;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...