Книги наших сотрудников
 
Гостевая книга 

справочник функций

скачать учебник PHP

Форум PHP

Учебник по PHP 4

Сколько новых сайтов Вы делаете за год? результаты


Варианты ответов

Голосов

%

1 сайт 36800 13.2%
2-3 сайта 19268 6.9%
не больше 10 сайтов 13850 5.0%
10-20 сайтов 11274 4.0%
Так много, что не могу сосчитать 143796 51.4%
Я вообще не делаю сайты 54598 19.5%

Общее количество проголосовавших составляет: 279586

Оглавление

  1. Основы PHP
  2. Операторы языка PHP
  3. Строковые функции
  4. Массивы
  5. Функции
  6. Работа с файлами
  7. Регулярные выражения
  8. Сессии и cookies в PHP
  9. Работа с FTP
  10. Проверка данных
  11. Гостевая книга
  12. PHP и MySQL
Rambler's Top100
Яндекс цитирования
Rambler's Top100



Справочник функций PHP

Функции для работы с датой и временем    Справочник функций PHP

date

Функция date — Форматирует системную дату/время

Синтаксис

string date (string format [, int timestamp])
Возвращает время, отформатированное в соответствии с аргументом format, используя метку времени, заданную аргументом timestamp или текущее системное время, если timestamp не задан. Другими словами, timestamp является необязательным и по умолчанию равен значению, возвращаемому функцией time().

Замечание: Для большинства систем допустимыми являются даты с 13 декабря 1901, 20:45:54 GMT по 19 января 2038, 03:14:07 GMT. (Эти даты соответствуют минимальному и максимальному значению 32-битового целого со знаком). Для Windows допустимы даты с 01-01-1970 по 19-01-2038.

Замечание: Для получения метки времени из строкового представления даты можно использовать функцию strtotime(). Кроме того, некоторые базы данных имеют собственные функции для преобразования внутреннего представления даты в метку времени (напрмер, функция MySQL UNIX_TIMESTAMP).



Символ в строке format

Описание

Пример возвращаемого значения

a

Ante meridiem или Post meridiem в нижнем регистре

am или pm

A

Ante meridiem или Post meridiem в верхнем регистре

AM или PM

B

Время в стадарте Swatch Internet

От 000 до 999

c

Дата в формате ISO 8601 (добавлено в PHP 5)

2004-02-12T15:19:21+00:00

d

День месяца, 2 цифры с ведущими нулями

от 01 до 31

D

Сокращенное наименование дня недели, 3 символа

от Mon до Sun

F

Полное наименование месяца, например

January или March от January до December

g

Часы в 12-часовом формате без ведущих нулей

От 1 до 12

G

Часы в 24-часовом формате без ведущих нулей

От 0 до 23

h

Часы в 12-часовом формате с ведущими нулями

От 01 до 12

H

Часы в 24-часовом формате с ведущими нулями

От 00 до 23

i

Минуты с ведущими нулями

00 to 59

I

(заглавная i) Признак летнего времени

1, если дата соответствует летнему времени, иначе 0.

j

День месяца без ведущих нулей

От 1 до 31

l

(строчная 'L') Полное наименование дня недели

От Sunday до Saturday

L

Признак високосного года

1, если год високосный, иначе 0.

m

Порядковый номер месяца с ведущими нулями

От 01 до 12

M

Сокращенное наименование месяца, 3 символа

От Jan до Dec

n

Порядковый номер месяца без ведущих нулей

От 1 до 12

O

Разница с временем по Гринвичу в часах

Например: +0200

r

Дата в формате RFC 2822

Например: Thu, 21 Dec 2000 16:01:07 +0200

s

Секунды с ведущими нулями

От 00 до 59

S

Английский суффикс порядкового числительного дня месяца, 2 символа

st, nd, rd или th. Применяется совместно с j

t

Количество дней в месяце

От 28 до 31

T

Временная зона на сервере

Примеры: EST, MDT ...

U

Количество секунд, прошедших с начала Эпохи Unix (The Unix Epoch, 1 января 1970, 00:00:00 GMT)

См. также time()

w

Порядковый номер дня недели

От 0 (воскресенье) до 6 (суббота)

W

Порядковый номер недели года по ISO-8601, первый день недели - понедельник (добавлено в PHP 4.1.0)

Например: 42 (42-я неделя года)

Y

Порядковый номер года, 4 цифры

Примеры: 1999, 2003

y

Номер года, 2 цифры

Примеры: 99, 03

z

Порядковый номер дня в году (нумерация с 0)

От 0 до 365

Z

Смещение временной зоны в секундах. Для временных зон западнее UTC это отрицательное число, восточнее UTC - положительное.

От -43200 до 43200



Любые другие символы, встреченные в строке format, будут выведены в результирующую строку без изменений. Z всегда возвращает 0 при использовании gmdate().

Пример кода

<?php
// вывод дня недели, например Wednesday
echo date("l");
// вывод даты в формате: Wednesday 15th of January 2003 05:51:38 AM
echo date("l dS of F Y h:i:s A");
// вывод: July 1, 2000 is on a Saturday
echo "July 1, 2000 is on a " date("l"mktime(000712000));
?>


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

Пример кода

<?php
// Экранирование символов в функции date()
// вывод: Wednesday the 15th
echo date("l \the jS");
?>


Функции date() и mktime() для вывода прошедших и будущих дат.

Пример кода

<?php
$tomorrow  
mktime(000date("m")  , date("d")+1date("Y"));
$lastmonth mktime(000date("m")-1date("d"),   date("Y"));
$nextyear  mktime(000date("m"),   date("d"),   date("Y")+1);
?>


Замечание: Лучше вычитать или прибавлять количество секунд в дне или месяце к к метке времени, так как приэтом будет учтен переход на летнее время.

Приведем еще несколько примеров использования функции date(). Помните, что следует экранировать все символы, которые вы хотите видеть в результате работы функции без изменений. Это относится и к символам, которые в текущей версии PHP не распознаются как специальные, так как этим символам может быть назначено значение в следующих версиях. Используйте одинарные кавычки для предотвращения преобразования
в перевод строки.

Пример кода

<?php
// Форматирование с использованием date()
// Предположим, что текущая дата March 10th, 2001, 5:16:18 pm
$today date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today date("m.d.y");                         // 03.10.01
$today date("j, n, Y");                       // 10, 3, 2001
$today date("Ymd");                           // 20010310
$today date('h-i-s, j-m-y, it is w Day z ');  // 05-16-17, 10-03-01, 1631 1618 6 Fripm01
$today date('i     is     he jS day.');   // It is the 10th day.
$today date("D M j G:i:s T Y");               // Sat Mar 10 15:16:08 MST 2001
$today date('H:m:s m is mo
    h
');     // 17:03:17 m is month
$today date("H:i:s");                         // 17:16:17
?>


Для форматирования дат на других языках используйте функции setlocale() и strftime().


Предыдущая: checkdate

Вверх

Следующая: getdate

Если Вам нужна частная профессиональная консультация от авторов многих книг Кузнецова М.В. и Симдянова И.В., добро пожаловать в наш Консультационный Центр SoftTime.