strftime

Форматирует время согласно локальным установкам.

Синтаксис:

string strftime(string format [, int timestamp]);

Возвращает строку, отформатированную согласно данной форматной строке format и используя данную временную метку timestamp или текущее локальное время, если метка не задана.

Функцией setlocale() можно выставить язык, на котором будут выводиться названия месяцев и дней.

В форматной строке следует использовать следующие спецификаторы преобразований:

%a - сокращенное название дня недели по умолчанию (Wed);
%A - полное название дня недели по умолчанию (Wednesday);
%b - сокращенное название месяца по умолчанию (Apr);
%B - полное название месяца по умолчанию (April);
%c - предпочтительное представление даты и времени (06/19/02 15:45:11);
%C - номер века (год, деленный на 100 и без дробной части, от 00 до 99);
%d - день месяца как десятичное число (в диапазоне от 0 до 31);
%D - эквивалент %m/%d/%y;
%e - число месяца (вместо незначащего нуля ставится пробел) (от 1 до 31);
%h - аналог %b;
%H - час как десятичное число в 24-часовом формате (в диапазоне от 00 до 23);
%I - час как десятичное число в 12-часовом формате (в диапазоне от 01 до 12);
%j - номер дня в году как десятичное число (в диапазоне от 001 до 366);
%m - номер месяца как десятичное число (в диапазоне от 1 до 12);
%M - минуты как десятичное число;
%n - символ перехода на новую строку;
%p - "am" или "pm" (до и после полудня) согласно текущему времени;
%r - время в 12-часовом формате (a.m. или p.m.);
%R - время в 24-часовом формате;
%S - секунды как десятичное число;
%t - символ табуляции;
%T - текущее время, эквивалентно %H:%M:$S;
%u - число дня в неделе (от 1 до 7) (понедельник - 1);
%U - номер недели в году как десятичное число, начиная с первого Воскресенья в качестве первого дня первой недели;
%V - номер недели в году по стандарту ISO 8601:1988 (от 1 до 53), где первая неделя - та, в которой насчитывается больше 3-х дней в текущем году;
%W - номер недели в году как десятичное число, начиная с первого понедельника в качестве первого дня первой недели;
%w - номер дня в неделе (от 0 до 6) (воскресенье - 0);
%x - представление даты в системном формате без указания времени (06/13/02);
%X - представление времени в системном формате без указания даты (15:34:54);
%y - год как десятичное число без столетия (в диапазоне от 00 до 99);
%Y - год как десятичное число, включая столетие;
%Z - временная зона или название или сокращение;
%% - символ "%".

setlocale ("LC_TIME", "C");
print(strftime("%A in Finnish is "));
setlocale ("LC_TIME", "fi");
print(strftime("%A, in French "));
setlocale ("LC_TIME", "fr");
print(strftime("%A and in German "));
setlocale ("LC_TIME", "de");
print(strftime("A.n"));

Форматирует локальное время согласно установкам locale.