как форматировать дату из MYSQL - PullRequest
1 голос
/ 25 октября 2009

Простой вопрос, но он мне нужен:)

  $query = "SELECT * 
FROM  `set` 
WHERE ID = '$id'";

$result = mysql_query($query);
$info = mysql_fetch_assoc($result);

$frmdate = $info['date'];

Пока я пытался

$timestamp = strtotime($info['date']);
$joined_date = date("j M. Y", $timestamp);

но не повезло!

Поле даты в mysql имеет тип данных DATE

Я хочу сделать это как "23 октября 2009"

как я могу это сделать?

Спасибо

Ответы [ 2 ]

2 голосов
/ 25 октября 2009

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

$timestamp = strtotime($frmdate);
$formatted_date = date("j M. Y", $timestamp);

Вы также можете переместить перевод из формата гггг-мм-дд в метку времени в самом запросе, используя:

select unix_timestamp(field_name) as field_name_timestamp
1 голос
/ 25 октября 2009

Вы можете отформатировать дату на сервере базы данных MySQL.

SELECT  *, DATE_FORMAT( date, '%e %b. %Y' ) AS formatted_date
FROM    `set` 
WHERE   ID = '$id'

Тогда вам просто нужно изменить свой php-код клиента, чтобы он просто использовал строку, возвращаемую вызовом базы данных в $info['formatted_date']. Используйте 'd' вместо 'e' в строке формата, если вы не хотите, чтобы в день месяца был начальный ноль.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...