Вывод даты в PHP в разных форматах.

Количество просмотров: 2299

При разработке проектов на php часто возникает необходимость вывести дату в том или ином формате, в данной статье рассмотрим несколько способов работы с датами в php. Начнем мы с функции date(); Поддержка данной функции имеется в PHP версиях(4,5,7). Функция date() - форматирует вывод системной даты(времени).

Описание

string date ( string $format [, int $timestamp = time() ] )

Возвращает строку, отформатированную в соответствии с указанным шаблоном format. Аргументом timestamp задается метка времени или текущее системное время если timestamp не задан.

В параметр format можно передавать следующие символы.

Символ в строке format Описание Пример возвращаемого значения
День --- ---
d День месяца, 2 цифры с ведущим нулём от 01 до 31
D Текстовое представление дня недели, 3 символа от Mon до Sun
j День месяца без ведущего нуля от 1 до 31
l (строчная 'L') Полное наименование дня недели от Sunday до Saturday
N Порядковый номер дня недели в соответствии со стандартом ISO-8601 (добавлен в версии PHP 5.1.0) от 1 (понедельник) до 7 (воскресенье)
S Английский суффикс порядкового числительного дня месяца, 2 символа st, nd, rd или th. Применяется совместно с j
w Порядковый номер дня недели от 0 (воскресенье) до 6 (суббота)
z Порядковый номер дня в году (начиная с 0) От 0 до 365
Неделя --- ---
W Порядковый номер недели года в соответствии со стандартом ISO-8601; недели начинаются с понедельника Например: 42 (42-я неделя года)
Месяц --- ---
F Полное наименование месяца, например January или March от January до December
m Порядковый номер месяца с ведущим нулём от 01 до 12
M Сокращенное наименование месяца, 3 символа от Jan до Dec
n Порядковый номер месяца без ведущего нуля от 1 до 12
t Количество дней в указанном месяце о т 28 до 31
Год --- ---
Y Порядковый номер года, 4 цифры Примеры: 1999, 2003
y Номер года, 2 цифры Примеры: 99, 03
Время --- ---
a AM (англ. "до полудня") или PM (англ. "после полудня") в нижнем регистре am или pm
A Ante meridiem или Post meridiem в верхнем регистре AM или PM
B Время в формате Интернет-времени (альтернативной системы отсчета времени суток) от 000 до 999
g Часы в 12-часовом формате без ведущего нуля от 1 до 12
G Часы в 24-часовом формате без ведущего нуля от 0 до 23
h Часы в 12-часовом формате с ведущим нулём от 01 до 12
H Часы в 24-часовом формате с ведущим нулём от 00 до 23
i Минуты с ведущим нулём от 00 до 59
s Секунды с ведущим нулём от 00 до 59
c Дата в формате стандарта ISO 8601 (добавлено в PHP 5) 2004-02-12T15:19:21+00:00
r Дата в формате » RFC 2822 Например: Thu, 21 Dec 2000 16:01:07 +0200

Рассмотрим несколько примеров использования данной функции.

Например код приведенный ниже выведет дату в формате день-месяц-год - 02-02-2017


echo date('d-m-Y');
// или дата через 100 дней 
date("d.m.Y", time() + 100*24*60*60)

//Если нам нужно изменить формат даты, например сделать так чтобы первым шел год, потом месяц и число то код примет следующий вид.

echo date('Y-m-d');
// Следственно результатом работы функции будет 2017-02-02.

Вывод даты на русском.

В следующем примере месяц будет выведен словом.


echo date('Y-d-M');

Результат будет следующим - 2017-02-Feb. Месяц выводится, однако нам нужно чтобы он выводился на русском языке. Как же быть?

К сожалению функция date() не подвержена локализации и для решения нашей задачи нам потребуется другая функция.

Для начала установив русскую локализацию


setlocale(LC_ALL, "russian");
 

И для вывода даты с настройками локали используем функцию strftime(); Теперь название дней и месяцев будет выводится с учетом установленной локали, в нашем случае на русском языке.

Несколько примеров:


setlocale(LC_ALL, "russian"); 
echo strftime('Число: %d, месяц: %B, день недели: %A');
//выведет - Число: 02, месяц: Февраль, день недели: четверг
или в другом формате
echo strftime('%a - %b -%Y');
// выведет - Чт - фев -2017

Ну вот собственно и все, в большинстве случаев работу с датой в php можно свести к этим двум функциям. Если вы начинающий веб разработчик, то мы рекумендуем вам пройти обучающие курсы по PHP. При необходимости мы можем дополнить данную статью другими примерами и функциями.

© 2015-2018 Goodweb.me --- Карта сайта --- info@goodweb.me

Наверх