PHP Дата і час
PHP функція date()
використовується, щоб форматувати дату та/або час.
PHP функція Date()
PHP функція date()
форматує мітку часу в більш зрозумілі дату й час.
Синтаксис
date(format,timestamp)
Параметр | Опис |
---|---|
format | Обов’язково. Визначає формат позначки часу |
timestamp | Не обов’язково. Визначає мітку часу. За замовчуванням поточні дата й час |
Мітка часу — це послідовність символів, що позначає дату та/або час, коли сталася певна подія.
Отримати дату
Необхідний параметр format функції date() визначає спосіб форматування дати (або часу).
Ось деякі символи, які зазвичай використовуються для дат:
- d – позначає день місяця (від 01 до 31)
- m – позначає місяць (від 1 до 12)
- Y – позначає рік (чотирма цифрами)
- l (малий регістр 'L') – позначає день тижня
Інші символи, наприклад "/", "." або "-" також можна вставити між символами для додаткового форматування.
Наведений нижче приклад форматує сьогоднішню дату трьома різними способами:
Приклад
<?php
echo "Сьогодні " . date("Y/m/d") . "<br>";
echo "Сьогодні " . date("Y.m.d") . "<br>";
echo "Сьогодні " . date("Y-m-d") . "<br>";
echo "Сьогодні " . date("l");
?>
Спробуйте самі »
PHP Порада – автоматичний рік авторського права
Використовуйте функцію date()
, щоб автоматично оновлювати рік авторського права на вашому вебсайті:
Отримати час
Ось кілька символів, які зазвичай використовуються для позначення часу:
- H – 24-годинний формат години (від 00 до 23)
- h – 12-годинний формат години з нулями на початку (від 01 до 12)
- i – хвилини з нулями на початку (від 00 до 59)
- s – секунди з нулями на початку (від 00 до 59)
- a – нижній регістр Ante meridiem і Post meridiem (Am або Pm - до полудня або після полудня)
Наведений нижче приклад виводить поточний час у вказаному форматі:
Зауважте, що PHP функція date() поверне поточну дату/час сервера!
Отримати часовий пояс
Якщо час, який ви отримали від коду, неправильний, можливо, ваш сервер знаходиться в іншій країні або налаштовано на інший часовий пояс.
Отже, якщо вам потрібен правильний час відповідно до певного місця, ви можете встановити часовий пояс, який хочете використовувати.
У наведеному нижче прикладі встановлюється часовий пояс на "America/New_York", а потім виводиться поточний час у вказаному форматі:
Приклад
<?php
date_default_timezone_set("America/New_York");
echo "Час є " . date("h:i:sa");
?>
Спробуйте самі »
Створити дату за допомогою mktime()
Додатковий (необов’язковий) параметр timestamp у функції date() визначає позначку часу. Якщо пропущено, використовуватимуться поточні дата й час (як у наведених вище прикладах).
PHP функція mktime()
повертає мітку часу Unix для дати. Позначка часу Unix містить кількість секунд між епохою Unix (1 січня 1970 р. 00:00:00 GMT) і вказаним часом.
Синтаксис
mktime(hour, minute, second, month, day, year) (година, хвилина, секунда, місяць, день, рік)
У наведеному нижче прикладі створюється дата й час за допомогою функції date()
із кількох параметрів у функції mktime()
:
Приклад
<?php
$d=mktime(11, 14, 54, 8, 12, 2014);
echo "Дата створення є " . date("Y-m-d h:i:sa", $d);
?>
Спробуйте самі »
Створити дату із рядка за допомогою strtotime()
PHP функція strtotime()
використовується для перетворення зрозумілого людині рядка дати на мітку часу Unix (кількість секунд після January, 1 1970 00:00:00 GMT).
Синтаксис
strtotime(time, now) (час, тепер)
У прикладі нижче створюється дата й час із функції strtotime()
:
Приклад
<?php
$d=strtotime("10:30pm April 15 2024");
echo "Дата створення є " . date("Y-m-d h:i:sa", $d);
?>
Спробуйте самі »
PHP досить розумно перетворює рядок на дату, тому ви можете вводити різні значення:
Приклад
<?php
$d=strtotime("tomorrow");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("next Saturday");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("+3 Months");
echo date("Y-m-d h:i:sa", $d) . "<br>";
?>
Спробуйте самі »
Однак, strtotime()
не є досконалим, тому не забудьте перевірити рядки, які ви туди додали.
Більше прикладів дати
Наведений нижче приклад виводить дати наступних шести субот:
Приклад
<?php
$startdate = strtotime("Saturday");
$enddate = strtotime("+6 weeks", $startdate);
while ($startdate < $enddate) {
echo date("M d", $startdate) . "<br>";
$startdate = strtotime("+1 week", $startdate);
}
?>
Спробуйте самі »
У наведеному нижче прикладі виводиться кількість днів до 4 липня:
Приклад
<?php
$d1=strtotime("July 04");
$d2=ceil(($d1-time())/60/60/24);
echo "Є " . $d2 ." днів до 4 липня.";
?>
Спробуйте самі »
Повний довідник PHP Дати
Щоб отримати повну довідку про всі функції дат, перейдіть до нашого повного PHP Довідника дати.
Довідник містить короткий опис і приклади використання для кожної функції!