date

(PHP 4, PHP 5, PHP 7)

dateFormatează o oră/dată

Descrierea

date ( string $format , int $timestamp = time() ) : string

Întoarce un string formatat în conformitate cu string-ul de formatare dat, utilizând timestamp-ul întreg dat, sau data și ora curentă dacă nu este furnizat nici un timestamp. Cu alte cuvinte, timestamp este opțional și implicit are valoarea întoarsă de time().

Parametri

format

Format acceptat de DateTimeInterface::format().

timestamp

Parametrul opțional timestamp este un integer și este un moment de timp Unix și are valoarea implicită a orei locale, dacă parametrul timestamp nu este indicat. Cu alte cuvinte, valoarea implicită este cea a funcției time().

Valorile întoarse

Întoarce un string cu dată formatat. Dacă este utilizată o valoare non-numerică pentru timestamp, este întors false și este emisă o eroare de nivel E_WARNING.

Erori/Excepții

Fiecare apel al unei funcții de dată/oră va genera o E_NOTICE dacă zona orară nu este validă și/sau un mesaj E_STRICT sau E_WARNING dacă se utilizează setările sistemului sau variabila de mediu TZ. Vedeți de asemenea date_default_timezone_set()

Exemple

Example #1 Exemple date()

<?php
// Stabilește fusul orar implicit. Disponibil începând cu PHP 5.1
date_default_timezone_set('UTC');

// Afișează ceva de felul: Monday
echo date("l");

// Afișează ceva de felul: Monday 8th of August 2005 03:12:46 PM
echo date('l jS \of F Y h:i:s A');

// Afișează: July 1, 2000 is on a Saturday
echo "July 1, 2000 is on a " date("l"mktime(000712000));

/* utilizarea constantelor în parametrul format */
// Afișează ceva de felul: Wed, 25 Sep 2013 15:28:57 -0700
echo date(DATE_RFC2822);

// Afișează ceva de felul: 2000-07-01T00:00:00+00:00
echo date(DATE_ATOMmktime(000712000));
?>

Puteți preveni ca un caracter recunoscut în string-ul de formatare să fie expandat prin prefixarea lui cu un backslash. Dacă caracterul cu backslash de acum este o secvență specială, va trebui de asemenea să prefixați backslash-ul.

Example #2 Evadarea caracterelor în date()

<?php
// Afișează ceva de felul: Wednesday the 15th
echo date('l \t\h\e jS');
?>

Este posibil de utilizat date() și mktime() împreună pentru a afla date din trecut sau viitor.

Example #3 Exemplu date() și mktime()

<?php
$tomorrow  
mktime(000date("m")  , date("d")+1date("Y"));
$lastmonth mktime(000date("m")-1date("d"),   date("Y"));
$nextyear  mktime(000date("m"),   date("d"),   date("Y")+1);
?>

Notă:

Aceasta poate fi mai sigur decât simpla adăugare sau scădere a numărului de secunde în zi sau lună la un timestamp din cauza timpului de vară.

Unele exemple de formatare date(). Observați că trebuie să evadați caracterele suplimentare, deoarece cele ce au o însemnătate specială vor produce rezultate nedorite, iar celelalte caractere pot căpăta o însemnătate specială în versiunile viitoare ale PHP. Când evadați, aveți grijă să utilizați ghilimele singulare pentru a preveni caractere ca \n să devină newline.

Example #4 Formatarea date()

<?php
// Presupunem că astăzi este: March 10th, 2001, 5:16:18 pm
// și ne aflăm în fusul orar Mountain Standard Time (MST)

$today date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today date("m.d.y");                         // 03.10.01
$today date("j, n, Y");                       // 10, 3, 2001
$today date("Ymd");                           // 20010310
$today date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
$today date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
$today date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
$today date("H:i:s");                         // 17:16:18
$today date("Y-m-d H:i:s");                   // 2001-03-10 17:16:18 (formatul MySQL DATETIME)
?>

Pentru a formata date în alte limbi, trebuie să utilizați funcțiile setlocale() și strftime() în loc de date().

Note

Notă:

Pentru a genera un timestamp dintr-o reprezentare string a datei, puteți utiliza strtotime(). În plus, unele baze de date au funcții pentru a converti formatele lor de date în timestamp-uri (cum ar fi funcția » UNIX_TIMESTAMP la MySQL).

Sfat

Timestamp-ul începutului interpelării este disponibil în variabila $_SERVER['REQUEST_TIME'] începând cu PHP 5.1.

A se vedea și