Преобразование даты в PHP

Статьи -> Программирование -> PHP

Преобразование даты в PHP

v:1.1 10.01.2010

Часто в программе на PHP при обработке данных, полученных извне, необходимо преобразовать дату в заданный формат.
Допустим, дата во входных данных имеет формат: "Thu, 03 Dec 2009 21:00:00 +0000", а нам нужен формат такой: "2009-12-03"
В PHP есть все необходимые средства для выполнения такого преобразования.

    Я пользуюсь таким способом:
  1. Функцией PHP explode разделяю исходную строку на подстроки, в качестве разделителя использую символ ' '(пробел).
  2. Из подстрок "день", "месяц", "год" формирую новую строку.
  3. Функцией PHP strtotime преобразую полученную в п.2. строку даты в "метку времени UNIX".
  4. Функцией PHP date из метки времени UNIX делаю дату в нужном формате.
Все это может показаться сложным, но в коде это оборачивается всего в несколько строк:



В Zend Framework есть еще одна возможность преобразования формата даты - класс Zend_Date.
Вот как преобразование даты может быть выполнено с использованием класса Zend_Date:



Zend_Date::DATE_MEDIUM - это константа класса Zend_Date, с помощью которой задается желаемый формат даты, причем при форматировании даты Zend_Date учитывает национальные настройки (локаль).

Как видите, этот способ более простой, чем использование функций PHP.

Петрелевич Сергей
petrelevich@yandex.ru
www.SmartyIT.ru

Метки: PHP   Web   Zend Framework  

Комментарии.

Внимание.
Комментировать могут только зарегистрированные пользователи.
Возможно использование следующих HTML тегов: <a>, <b>, <i>, <br>.

Dornern 27.02.2010 6:58:34
а все таки: отлично... а82ч
 
Chubby Panty Tgp 04.03.2010 14:22:34
well.. it's like I thought!
 
Яндекс цитирования Ðåéòèíã@Mail.ru Rambler's Top100