Уроки PHP – отримання та виведення дати і часу

Сьогоднішня стаття присвячена розгляду того, як на практиці використовувати функції по отриманню дати і часу в PHP, а також розгляду способів виведення та форматування дати і часу.

 

 

Основні моменти для дат і часу в PHP

Функції, які обробляють дату і час в PHP, дозволяють отримувати дату і час з того сервера, на якому виконується скрипт. Також вони дозволяють маніпулювати, редагувати, форматувати ці значення перед їх відображенням на екран (виведенням). Сьогодні ми розглянемо найважливіші функції для роботи з датою і часом.

 

 

Функція PHP date()

Найбільш використовувана функція для обробки дати і часу – це функція date(). Ця функція повертає фактичну (системну) дату і час в зазначеному вами форматі. Також функція може конвертувати формат позначки часу (часова мітка, мітка часу або timestamp) в легкий для читання формат. Повний синтаксис функції наступний:

date ( string $format [, int $timestamp = time() ] )

 
Функція повертає рядок, який відформатований відповідно до зазначеного шаблону (format). Аргумент timestamp задає мітку часу; якщо timestamp не заданий, тоді використовується поточний системний час. Вказувати тимчасову мітку необов’язково, якщо ви її не вкажете, тоді вона за замовчуванням буде дорівнює значенню, яке повертається функцією time().    
 
Нижче представлені практичні приклади отримання фактичної інформації про дату і час:

<?php
echo "<p>Відображення поточної дати: " . date('d-m-Y') . "</p>";
echo "<p>Відображення поточного часу: " . date('H:i:s') . "</p>";
echo "<p>Відображення поточної дати та часу: " . date('d-m-Y H:i:s') . "</p>";
echo "<p>Відображення поточної дати та часу в довгому форматі: " . date('d F Y, D - g:i:s A') . "</p>";
?>

 

 

У цих прикладах використовуються різні шаблони формату дати і часу. Нижче представлена таблиця з розшифровкою деяких символів в рядку format.

Символ в рядку format Опис Приклад значення, що повертається
День
d День місяця з 2-ма цифрами від 01 до 31
D День тижня в текстовому форматі, 3 символи від Mon до Sun
z Порядковий номер дня в році (починаючи з 0) Від 0 до 365
Місяць
F Повна назва місяця, наприклад, January або March від January до December
m Порядковий номер місяця, 2 цифри від 01 до 12
M Скорочена назва місяця, 3 символи від Jan до Dec
Рік
Y Порядковий номер року, 4 цифри Приклади: 1999, 2019
y Порядковий номер року, 2 цифри Приклади: 99, 19
Час
a Ante meridiem (лат. “До полудня”) або Post meridiem (лат. “Після полудня”) в нижньому регістрі am або pm
A Ante meridiem або Post meridiem в верхньому регістрі AM або PM
g Години в 12-годинному форматі від 1 до 12
G Години в 24-годинному форматі від 0 до 23
h Години в 12-годинному форматі від 01 до 12
H Години в 24-годинному форматі, 2 цифри від 00 до 23
i Хвилини, 2 цифри від 00 до 59
s Секунди, 2 цифри від 00 до 59

 

 

 

Функція PHP mktime()

Іноді вам потрібно отримати мітку часу в минулому або майбутньому. Ви можете зробити це за допомогою функції mktime(). Вам потрібно вказати необхідну дату, і вона повертається з міткою часу Unix. Синтаксис цієї функції наступний:

int mktime ( [int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year]]]]]] )

 

Тут використовуються такі дані:

  • hour – Кількість годин, що минули з початку дня, зазначеного параметрами month, day і year.
  • minute – Кількість хвилин, що минули від початку години, зазначеної параметром hour.
  • second – Кількість секунд, що минули від початку хвилини, зазначеної параметром minute.
  • month – Кількість місяців, що минули з кінця попереднього року.
  • day – Кількість днів, що минули з кінця попереднього місяця.
  • year – Номер року, може бути зазначений двома або чотирма цифрами.

 

Ви можете використовувати цю тимчасову мітку з вищезгаданою функцією дати (date()), щоб відобразити її в потрібному форматі. Нижче представлені деякі практичні приклади використання цієї функції:

<?php
echo "<p>Відображення дати, згенерованої функцією mktime: " . date('d-m-Y', mktime(0, 0, 0, 5, 25, 2019)) . "</p>";
echo "<p>Відображення дати, згенерованої функцією mktime з невірним зазначенням дня і місяця: " . date('d-m-Y', mktime(0, 0, 0, 14, 32, 2019)) . "</p>";
?>

 

 

Якщо ви хочете отримати дату завтрашнього дня, ви можете використовувати наступний код:

<?php
echo "<p>Сьогоднішня дата: " . date('d-m-Y') . "</p>";
echo "<p>Завтра буде: " . date('d-m-Y', mktime(0, 0, 0, date('m'), date('d')+1, date('Y') ) ) . "</p>";
?>

 

В даному прикладі ми використовували функцію mktime() і додали 1 день до параметру дня, щоб отримати дату завтрашнього дня.

 

Share

Останні пости

Дейл Карнегі

Поводься так, ніби ти вже щасливий, і ти справді станеш щасливішим Дейл Карнегі   Читати далі

12/04/2024

Боротьба з тютюнопалінням на яскравих прикладах соціальної реклами

Кожного року величезна кількість людей передчасно помирає від серцево-судинних захворювань, раку, діабету, хронічних захворювань органів… Читати далі

11/04/2024

Альберт Ейнштейн

Безглуздо продовжувати робити те ж саме та очікувати на інші результати Альберт Ейнштейн   Читати далі

10/04/2024

Бернард Шоу

Чесність і вірність — це дорогий подарунок, якого від дешевих людей не варто очікувати Джордж… Читати далі

08/04/2024

Огляд технології, прикладів та переваг хмарних рішень: SaaS, PaaS та IaaS

Дослідження показують, що бізнес витрачає на хмарні технології дедалі більше грошей, і наразі ця цифра… Читати далі

07/04/2024

Купальник великого розміру: підказки для вибору та самовпевненості на пляжі

Літо — час для відпочинку, сонця та пляжу. І для багатьох з нас це означає,… Читати далі

05/04/2024