Дата и час

Много често ни се налага да работим с някакви дати и часове. Тогава на помощ идва date() функцията, която се използва в нашите PHP скриптове за форматиране на час или дата.

PHP функцията Date()

Използва се за дати и часове, като ги прави по-четими за потребителите и дори и за нас като програмисти. Тази функция приема два параметъра format и timestamp. Първия е задължителен и определя в какъв формат ще се изведе датата. Вторият е опционален като определя датата или часа за форматиране.

Параметър Описание
format Задължителен. Определя форматът на зададеното време.
timestamp Опционално. Задава специфично време. По подразбиране е настоящото време.

Видове форматиране на дати

Това са някои от основните видове форматиране за дати.

  • y – година
  • m – месец
  • d – ден от месеца
  • l – пореден ден от седмицата

За допълнително форматиране, можем да използваме „/“, „-„, „.“ и т.н. Например „d-m-y“ ще изпише датата във вид на „ден-месец-година“. С долния пример форматираме дата по няколко различни начина.

Опитайте сами »

Употреба на датите

Една от добрите практики е да използвате date() на места където искате датата да се променя в зависимост от месеца, деня или дори годината. За пример можем да дадем надписите за авторско право, които няма как да не сте виждали: © + настоящата година. С долния код, можем да автоматизираме това, за да не се налага да го сменяме ръчно всяка година.

Опитайте сами »

Видове форматиране на часове

Основните видове форматиране, които се използват при часовете.

  • h – Форматира час с 0 пред по малките от 10 часове
  • i – Форматира минути с 0 пред по малките от 10 минути
  • s – Форматира секунди с 0 пред по малките от 10 секунди
  • aam или pm за 12 часовата форма.
Опитайте сами »

Нещо, което трябва да имате предвив е, че тази PHP функция работи с текущото време на сървъра. Има значение, за коя часова зона е настроен той.


Настройване на часова зона

Често, ако date() не върне очакваната от вас стойност за текущо време, то най-вероятно причината идва от сървъра ви. Той може да е в държава в друг часови пояс или просто да е настроен за друга часова зона. Разбира се, можем да използваме друга вградена в PHP функция, за да го настроим. С долния код настройваме сървъра ни за часовата зона в New York, USA.

Опитайте сами »

Създаване на дата с mktime()

Ако не подадем timestamp на функцията date() то тя ще използва времето в момента, в който се изпълнява. Но ако искаме да използваме функцията по друг начин можем да създадем наш собствен timestamp и да го подадем на date() като параметър, за да извършим някакво действие с него.

Ето как можем да изпишем дата създадена с mktime().

Опитайте сами »

Създаване на дата от стринг с strtotime()

Чрез strtotime() можем да подадем стринг, който да обработим като дата. В следващият пример можем да видим точният синтаксис за използване на функцията.

Опитайте сами »

PHP много добре разпознава датите в стрингове, така че можете да му подадете параметрите по много различни начини. Въпреки това проверявайте подаденото от вас спрямо изхода, защото грешки се допускат въпреки всичко. Така е в програмирането :). Поне за сега – вижте повече за machine learning някъде из мрежата.

Опитайте сами »

С този пример можем да принтираме датата на следващите 6 съботи:

Опитайте сами »

А с този пример принтираме броя на дните до четвърти Юли.

Опитайте сами »