Объектно-ориентированный язык сценариев php, страница 17

 

П.8.Работа с датой и временем

 

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

 

Пример 8.1 Использование функции date() для получения текущего времени.

<?php

print date("j of F Y H:i");

?>

 

Результатом работы данной программы будет вывод даты в следующем представлении: 13 of April 2004 20:25. Вид (формат), в котором представлена дата, полностью зависит от переданной в качестве аргумента строчки "j of F Y H:i". Разберем эту строку.

j, F, Y, H, i – это специальные символы, получая которые функция date() понимает, в каком формате необходимо представить дату.

j – номер дня в месяце без предваряющего нуля (в нашем случае происходит вывод числа 13), of – просто предлог, который так и будет выведен (все элементы не являющиеся специальными символами будут просто выведены на экран браузера без изменения).

Fполное английское название месяца (April).

Y – год, представленный с помощью 4 цифр(2004).

H – час, представленный в 24-часовом формате(20), i – минуты, от «00» до «59»(25).

Для более красивого вывода между H и i поставлено двоеточие (поэтому и получилось 20:25). Функция date() универсальна, она выводит только ту информацию, которая нас интересует. Допустим, нас интересует только сегодняшнее число, функция  легко предоставит вам эту информацию, если вы просто передадите ей в качестве аргумента строку с символом jprint date("j");

Ниже представлена таблица символов, которые позволяют изменять формат даты.

 

Таблица 8.1 Символы, позволяющие изменять формат даты

Символ

Описание

U

Количество секунд, прошедших с полночи 1 января 1970 года (с момента основания UNIX)

Y

Год(4 цифры)

y

Год(2 цифры)

z

Номер дня от начала года(от 0 до 365)

F

Полное английское название месяца(April)

m

Номер месяца(две цифры: от 01 до 12)

n

Номер месяца без предваряющего нуля: от 1 до12

M

Трехсимвольная английская аббревиатура месяца(Apr)

d

Номер дня в месяце(2 цифры: от 01 до 31)

j

Номер дня в месяце без предваряющего нуля

l

День недели по-английски (например, Tuesday)

D

Трехбуквенная английская аббревиатура дня недели(Tue)

A

До или после полудня: «PM» или «AM»

H

Часы от «00» до «23»

h

Часы от «00» до «12»

i

Минуты от «00» до «59»

s

Секунды от «00» до «59»

Другие полезные функции работы с датой и временем.

time() – возвращает целое число секунд, прошедших с моментf начала "Эпохи UNIX" – 1января 1970, 00:00:00 GMT (его называют UNIX timestart).

Например, вызов функции, echo time()  выведет 1112778970.

gettime( timestart) – возвращает ассоциативный массив, содержащий информацию о дате и времени от целочисленного аргумента timestart. Функция gettime() без аргумента работает с текущей датой. Элементы формируемого массива имеют следующие названия ключей:

second – секунды;

minutes -минуты;

hours - часы;

mday – день месяца;

wday – день недели, числовой;

mon – месяц, числовой;

year – год, числовой;

yday – день в году, числовой;

weekday – день недели, текстовый, полный, например, Wednesday;

month - месяц, текстовый, полный, например, January.

0- . аргумент функции ("UNIX timestart" – когда записана функция gettime() без аргумента).

 

Задание для самопроверки

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

 

П.9.Форматирование данных при выводе на экран