Функция date

Функцията date извежда дата в зададен формат. Първият параметър функцията приема формат, а вторият незадължителен параметър - момент от време във формат timestamp. Ако вторият параметър не е указан - ще се вземе текущият момент от време, ако е указан - то зададеният.

Форматът се задава с управляващи команди (английски букви), като между тях могат да се вмъкват всякакви разделители (тирета, двоеточие и така нататък).

Функцията приема следните команди (главните букви се различават от обикновените, обърнете внимание):

Синтаксис

phpdate(string $format, ?int $timestamp = null): string

Примери за работа с date

php<?php
  // Всички примери са показани за дата 01.06.2013 в 12.23.59, понеделник
  
  echo date('Y'); // ще изведе '2013'
  echo date('y'); // ще изведе '13'
  echo date('m'); // ще изведе '06' - номер на месеца
  echo date('d'); // ще изведе '01' - номер на деня в месеца
  echo date('j'); // ще изведе '1'  - номер на деня в месеца (без нула отпред)
  echo date('w'); // ще изведе '1'  - понеделник
  echo date('H'); // ще изведе '12' - часове
  echo date('i'); // ще изведе '23' - минути
  echo date('s'); // ще изведе '59' - секунди
  
  echo date('d-m-Y'); // ще изведе '01-06-2013'
  echo date('d.m.Y'); // ще изведе '01.06.2013'
  echo date('H:i:s d.m.Y'); // ще изведе '12:23:59 01.06.2013'
?>

Втори параметър на функцията date

Функцията date има втори незадължителен параметър, който приема момент от време във формат timestamp. Ако се подаде този параметър, функцията date ще форматира не текущия момент от време, а този, който е подаден като втори параметър. Този timestamp може да се получи, например, чрез mktime (но не е задължително):

php<?php
  echo date('d-m-Y', mktime(0, 0, 0, 12, 29, 13)); // ще изведе '29-12-2013'
?>

Това може да се използва, за да се разбере номерът на деня от седмицата за определена дата - просто я подаваме като втори параметър с помощта на функцията mktime, а като първи параметър поставяме управляващия символ 'w':

php<?php
  // Да разберем кой ден от седмицата е бил 29-12-2013:
  echo date('w', mktime(0, 0, 0, 12, 29, 13)); // ще изведе '0' - неделя
?>

Вижте също

  • функцията mktime,
    която връща момент от време във формат timestamp