date

Formatta un timestamp Unix

string date(string $format, $timestamp)

Restituisce una stringa formattata in accordo con il formato della stringa data usando l'intero timestamp dato (timestamp Unix) o l'orario corrente se nessun timestamp è dato. In altre parole, timestamp è opzionale e di default prende il valore di time.

Attenzione: I timestamp Unix non gestiscono i fusi orari. Utilizzare la classe DateTimeImmutable, e i suoi metodi di formattazione DateTimeInterface::format per formattare le informazioni data/ora con un fuso orario allegato.

Date timestamp description format
  • Formato accettato da DateTimeInterface::format.
  • Restituisce una stringa data formattata. Se viene utilizzato un valore non numerico per timestamp, viene restituito false e viene emesso un errore di livello E_WARNING.

    Version Description 8.0.0 timestamp ora è nullable.

    Esempi di date <?php // imposta il fuso orario di default da utilizzare. date_default_timezone_set('UTC'); // Stampa qualcosa di simile a: Monday echo date("l"); // Stampa qualcosa di simile a: Monday 8th of August 2005 03:12:46 PM echo date('l jS \of F Y h:i:s A'); // Stampa: July 1, 2000 is on a Saturday echo "July 1, 2000 is on a " . date("l", mktime(0, 0, 0, 7, 1, 2000)); /* usa le costanti nel parametro format */ // stampa qualcosa di simile a: Wed, 25 Sep 2013 15:28:57 -0700 echo date(DATE_RFC2822); // stampa qualcosa di simile a: 2000-07-01T00:00:00+00:00 echo date(DATE_ATOM, mktime(0, 0, 0, 7, 1, 2000)); ?>

    È possibile evitare che un carattere riconosciuto nella stringa formato venga espanso effettuando l'escape di esso anteponendo un backslash. Se il carattere con un backslash è già una sequenza speciale, potrebbe essere necessario effettuare l'escape anche del backslash. Effettuare l'escape dei caratteri in date <?php // stampa qualcosa di simile a: Wednesday the 15th echo date('l \t\h\e jS'); ?>

    È possibile utilizzare insieme date e mktime per trovare date nel futuro o nel passato. Esempio di date e di mktime <?php $tomorrow = mktime(0, 0, 0, date("m") , date("d")+1, date("Y")); $lastmonth = mktime(0, 0, 0, date("m")-1, date("d"), date("Y")); $nextyear = mktime(0, 0, 0, date("m"), date("d"), date("Y")+1); ?> Questo può essere più affidabile rispetto che semplicemente aggiungere o sottrarre il numero di secondi in un giorno o in un mese ad un timestamp a causa dell'ora legale.

    Alcuni esempi della formattazione date. Notare che si dovrebbe effettuare l'escape di qualsiasi altro carattere, come tutti quelli che attualmente hanno un significato speciale produrranno risultati indesiderati, e ad altri caratteri potrebbe essere assegnato un significato nelle versioni future di PHP. Quando si effettua l'escape, assicurarsi di usare gli apici singoli in modo da evitare che i caratteri come \n divengano nuove linee. Formattazione di date <?php // Assumendo che oggi sia Il 10 Marzo, 2001, 5:16:18 pm, e che noi siamo nel // Fuso Orario 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 (the MySQL DATETIME format) ?>

    Per formattare le date in altri lingue, può essere utilizzata IntlDateFormatter::format al posto di date.

    Nota: Per generare un timestamp da una stringa che rappresenta la data, si può essere in grado di utilizzare strtotime. Inoltre, alcuni database hanno delle funzioni per convertire i loro formati data in timestamp (come la funzione UNIX_TIMESTAMP di MySQL).
    Suggerimento: Il timestamp dell'inizio della richiesta è disponibile in $_SERVER['REQUEST_TIME'].

    DateTimeImmutable::__construct DateTimeInterface::format gmdate idate getdate getlastmod mktime IntlDateFormatter::format time Costanti di DateTime Predefinite