Как легко отформатировать дату и время в PHP? - PullRequest
6 голосов
/ 18 декабря 2009

Чтобы изменить 2009-12-09 13:32:15 на 09/12/2009

Ответы [ 4 ]

13 голосов
/ 18 декабря 2009

здесь:

 echo date("d/m/Y", strtotime('2009-12-09 13:32:15'))
4 голосов
/ 18 декабря 2009

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

$timestamp = strtotime('2009-12-09 13:32:15');
echo date('d/m/Y', $timestamp);

И вы получите:

09/12/2009



[редактировать 2012-05-19] Обратите внимание, что strtotime() имеет несколько возможных ограничений:

  • Формат даты должен быть YYYY-MM-DD; это может работать в некоторых других случаях, но не всегда!
  • Кроме того, работа с метками времени UNIX , как и с date() и strtotime(), означает, что вы сможете работать только с датами между 1970 и 2038 (возможно, более широкий диапазон, в зависимости от вашей системы, но в любом случае он не ограничен)

Работа с классом DateTime часто является гораздо лучшей альтернативой:

  • Вы можете использовать DateTime::__construct() или DateTime::createFromFormat() для создания DateTime объект - второй доступен только с PHP> = 5.3, но позволяет указать формат даты, который может оказаться полезным,
  • И вы можете использовать метод DateTime::format() для преобразования этого объекта в любой формат даты, с которым вы, возможно, захотите работать.
0 голосов
/ 18 декабря 2009
 $long_date = '2009-12-09 13:32:15';

 $epoch_date = strtotime($long_date);

 $short_date = date('m/d/Y', $epoch_date);

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

0 голосов
/ 18 декабря 2009

Использование метода date().

print date("d/m/Y", strtotime("2009-12-09 13:32:15"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...