getdate în PHP

Împarte o dată în bucăți (zi, lună, an, oră, ziua săptămânii) și le returnează într-un tablou.

Sintaxă
getdate(?int $timestamp = null): array

Ce face getdate

getdate primește un timestamp (implicit momentul curent) și returnează un tablou asociativ cu toate componentele datei. Este util când ai nevoie de mai multe bucăți deodată, fără să apelezi date de mai multe ori.

Cheile tabloului: seconds, minutes, hours, mday (ziua lunii), wday (ziua săptămânii, 0 = duminică), mon (luna), year, yday (ziua din an, de la 0), weekday și month (numele, în engleză) și 0 (timestamp-ul).

Parametri

Parametru Descriere
$timestamp Opțional. Momentul de timp. Implicit, acum.

Ce returnează

Un tablou asociativ cu componentele datei.

Exemple

Exemplul 1: Toate componentele unei date

<?php
date_default_timezone_set("Europe/Bucharest");

print_r(getdate(mktime(14, 30, 0, 10, 19, 2026)));

Rezultat

Array
(
    [seconds] => 0
    [minutes] => 30
    [hours] => 14
    [mday] => 19
    [wday] => 1
    [mon] => 10
    [year] => 2026
    [yday] => 291
    [weekday] => Monday
    [month] => October
    [0] => 1792409400
)

Exemplul 2: Numele zilei și al lunii în română

Numele din getdate sunt în engleză. Folosește wday și mon ca indici în tablouri proprii.

<?php
date_default_timezone_set("Europe/Bucharest");

$zile = ["duminică", "luni", "marți", "miercuri", "joi", "vineri", "sâmbătă"];
$luni = [1 => "ianuarie", "februarie", "martie", "aprilie", "mai", "iunie",
    "iulie", "august", "septembrie", "octombrie", "noiembrie", "decembrie"];

$d = getdate(mktime(0, 0, 0, 12, 1, 2026));
echo "{$zile[$d['wday']]}, {$d['mday']} {$luni[$d['mon']]} {$d['year']}";

Rezultat

marți, 1 decembrie 2026

Greșeli frecvente

  • Crezi că wday începe cu luni. În getdate, 0 înseamnă duminică, 1 luni și așa mai departe.
  • Afișezi direct weekday sau month într-un site românesc. Sunt mereu în engleză.

Comenzi înrudite

  • date: Afișează data și ora într-un anumit format.
  • mktime: Construiește timestamp-ul Unix pentru o dată și o oră anume, din ore, minute, secunde, lună, zi și an.
  • time: Returnează momentul curent ca număr de secunde de la 1 ianuarie 1970 (timestamp Unix).