Від автора: нещодавно прочитав чергове творіння фантастів про подорожі в часі. Я думаю, що в майбутньому це стане можливо. При цьому для установки дати і року «прибуття» будуть використовуватися функції програмних мов. Наприклад, PHP функції дати.
Трохи про часу в PHP
У PHP для роботи з часом і датами є велика колекція всіляких функцій. Але тут головне розуміти, звідки всі ці функції черпають відомості для відображення коректних значень часу і календаря?
Ці дані вони отримують з налаштувань сервера, на якому встановлено PHP і до якого вони звертаються. Тобто функції не реалізують в собі засобів для вимірювання часу. Всі значення вони отримують від ядра PHP.
Для більшої частини операційних систем самою ранньою датою є 1901 рік (13 грудня). «Давнє» значення не варто запитувати, щоб не отримати у відповідь повідомлення про помилку.
Хоча «крайні» параметри часу у кожної з платформ можуть бути» специфічними». Наприклад, для Windows – це 1970 рік і 2038. Як бачите, сильно багато часу не розженешся . Але для наших «вишукувань» такого діапазону буде цілком достатньо.
Занурюємося під час PHP
Тепер розглянемо, які існують в PHP функції дати і часу. Найголовнішою і універсальною з них по праву вважається функція date(). В якості параметрів вона приймає один з численних прапорів і позначку часу (необов’язковий), яка дорівнює кількості секунд, що пройшли з 1 січня 1970 р. на поточний момент. Позначку часу можна отримати за допомогою функції time(). Приклад:
Але існує менш екзотичний «спосіб дізнатися час і дату. Повернемося до date(). Я не буду описувати всі прапори, які можна передавати цієї функції. Просто запам’ятайте, що прапори, передані в якості обов’язкового аргументу, задають формат відображення часу і дати, які функція зчитує з налаштувань сервера. Приклади використання:
Виводимо дату-час у форматі RFC 2822. Для цього використовується прапор r:
Отримуємо тимчасову зону, встановлену на стороні сервера. Для цього потрібно вказати прапор T:
Якщо забули, скільки днів у поточному місяці, тоді використовуйте прапор t:
Інші функції
Щось ми з вами зациклилися на одному засобі мови. Адже існують і інші PHP функції дати і часу. Давайте швидко пробіжимося по ним.
Якщо потрібно відобразити на екрані тільки дату, то для цього потрібно застосувати функцію getdate(). Її особливістю є те, що вона повертає асоціативний масив зі значеннями часу та дати, тому для виведення потрібно використовувати функцію print_r():
Ми знову отримали всю інформацію про поточну дату і час. Хоча «замовляли» тільки календарні дані.
Доведеться явно вказати, які елементи масиву ми хочемо бачити на екрані:
“;
?>
Насправді в PHP функцій для часу кілька. Ось ще одна – localtime(). Вона також повертає результат у вигляді масиву, але тепер вже у вигляді звичайного. Тому при виведенні потрібно вказати порядок відображення елементів масиву, щоб можна було «нормально» відповісти, скільки зараз часу .
Наостанок хотілося б дати слушну пораду: якщо надумаєте винаходити нову модель машини часу, то не забудьте скористатися функціями PHP. Це надійне і перевірене засіб. Переконайтеся в цьому, коли опинитеся в майбутньому .