Funzione data() e ora PHP: come ottenere il timestamp corrente?
โก Riepilogo intelligente
La funzione PHP date() formatta i timestamp in date e orari leggibili. Questa guida illustra la sintassi delle date, il timestamp Unix, come elencare e impostare i fusi orari, la funzione mktime per la creazione di timestamp e fornisce un riferimento completo dei caratteri di formato per ora, giorno, mese e anno.

Funzione PHP date()
La funzione `date` di PHP รจ una funzione integrata che semplifica la gestione dei dati di tipo data. Viene utilizzata per formattare una data o un'ora in un formato leggibile. Puรฒ essere utilizzata, ad esempio, per visualizzare la data di pubblicazione di un articolo o per registrare l'ultima data di aggiornamento dei dati in un database.
Sintassi ed esempio della data PHP
La funzione PHP date() ha la seguente sintassi di base.
<?php date(format,[timestamp]); ?>
QUI,
- โdate(โฆ)โ รจ la funzione che restituisce il timestamp corrente formattato in PHP sul server.
- "formato" indica il formato generale che desideriamo per il nostro output, ad esempio:
- "Ymd" per il formato data PHP YYYY-MM-DD
- โYโ per visualizzare l'anno corrente
- โ[timestamp]โ รจ facoltativo. Se non viene fornito alcun timestamp, PHP utilizzerร la data e l'ora correnti del server.
Vediamo un semplice esempio che mostra l'anno corrente.
<?php echo date("Y"); ?>
Produzione:
2026
Cos'รจ un TimeStamp?
Un timestamp in PHP รจ un valore numerico in secondi tra l'ora corrente e il valore all'1st Gennaio 1970, ore 00:00:00, fuso orario di Greenwich (GMT).
Il valore restituito dalla funzione temporale dipende dal fuso orario predefinito.
Il fuso orario predefinito รจ impostato nel file php.ini. Puรฒ anche essere impostato a livello di codice utilizzando la funzione date_default_timezone_set.
Il codice seguente visualizza il timestamp corrente.
<?php
echo time();
?>
Supponendo che tu abbia salvato il file timestamp.php nella cartella phptuts, vai al URL http://localhost/phptuts/timestamp.php
Nota: il valore del timestamp non รจ costante. Cambia ogni secondo.
Ottenere un elenco di identificatori di fuso orario disponibili
Prima di esaminare come impostare il fuso orario predefinito a livello di programmazione, vediamo come ottenere un elenco dei fusi orari supportati.
<?php $timezone_identifiers = DateTimeZone::listIdentifiers(); foreach($timezone_identifiers as $key => $list){ echo $list . "<br/>"; } ?>
QUI,
- โ$timezone_identifiers = DateTimeZone::listIdentifiers();โ richiama il metodo statico listIdentifiers della classe integrata DateTimeZone. Il metodo listIdentifiers restituisce un elenco di identificatori assegnati alla variabile $timezone_identifiers.
- โforeach{โฆ}โ scorre lโarray e stampa i valori.
Supponendo che tu abbia salvato il file list_time_zones.php nella cartella phptuts, vai al file URL http://localhost/phptuts/list_time_zones.php
PHP imposta il fuso orario in modo programmatico
La funzione date_default_timezone_set consente di impostare il fuso orario predefinito da uno script PHP.
Il fuso orario impostato verrร quindi utilizzato da tutte le date funzioni PHP nei tuoi script. Ha la seguente sintassi.
<?php date_default_timezone_set(string $timezone_identifier); ?>
QUI,
- โdate_default_timezone_set()โ รจ la funzione che imposta il fuso orario predefinito
- "string $timezone_identifier" รจ l'identificatore del fuso orario
Lo script seguente visualizza l'ora in base al fuso orario predefinito impostato in php.ini. Successivamente, cambia il fuso orario predefinito in Asia/Calcutta e visualizza nuovamente l'ora.
<?php echo "The time in " . date_default_timezone_get() . " is " . date("H:i:s"); date_default_timezone_set("Asia/Calcutta"); echo "The time in " . date_default_timezone_get() . " is " . date("H:i:s"); ?>
Supponendo che tu abbia salvato il file set_time_zone.php nella cartella phptuts, vai al file URL http://localhost/phptuts/set_time_zone.php
Funzione PHP Mktime
La funzione mktime restituisce il timestamp in a Unix formato.
La sintassi รจ la seguente.
<?php mktime(hour, minute, second, month, day, year, is_dst); ?>
QUI,
- โmktime(โฆ)โ รจ la funzione di marcatura temporale di PHP
- โoraโ รจ facoltativo; รจ il numero dellโora
- โminutoโ รจ facoltativo; indica il numero di minuti
- โsecondoโ รจ facoltativo; indica il numero di secondi
- โmeseโ รจ facoltativo; indica il numero del mese
- โgiornoโ รจ facoltativo; รจ il numero del giorno
- โannoโ รจ facoltativo; รจ il numero dellโanno
- Il parametro โis_dstโ รจ facoltativo e viene utilizzato per determinare l'ora legale. Il valore 1 indica se รจ in vigore l'ora legale, 0 se non lo รจ e -1 se non รจ noto.
Vediamo ora un esempio che crea un timestamp per la data 13/10/2025 utilizzando la funzione mktime.
<?php
echo mktime(0,0,0,10,13,2025);
?>
QUI,
- โ0,0,0โ rappresenta rispettivamente lโora, il minuto e il secondo.
- "10" รจ il mese dell'anno
- โ13โ รจ il giorno del mese
- โ2025โ รจ lโanno
Produzione:
1760328000
Riferimento al formato data in PHP
Le tabelle seguenti mostrano i caratteri di formato piรน comuni utilizzati quando si lavora con le funzioni di data di PHP.
Parametri temporali
| Parametro | Descrizione | Esempio |
|---|---|---|
| "R" | Restituisce la data e l'ora complete |
<?php echo date("r"); ?> |
| โaโ, โAโ | Restituisce se l'ora corrente รจ rispettivamente am o pm, AM o PM |
<?php echo date("a"); echo date("A"); ?> |
| โgโ, โGโ | Restituisce rispettivamente l'ora senza zeri iniziali [da 1 a 12], [da 0 a 23]. |
<?php echo date("g"); echo date("G"); ?> |
| โhโ, โHโ | Restituisce l'ora con zeri iniziali [da 01 a 12], [da 00 a 23] rispettivamente |
<?php echo date("h"); echo date("H"); ?> |
| "ร" | Restituisce i minuti/secondi con zeri iniziali [da 00 a 59] |
<?php echo date("i"); echo date("s"); ?> |
Parametri giornalieri
| Parametro | Descrizione | Esempio |
|---|---|---|
| "D" | Restituisce il giorno del mese con zeri iniziali [da 01 a 31] |
<?php echo date("d"); ?> |
| "J" | Restituisce il giorno del mese senza zeri iniziali [da 1 a 31] |
<?php echo date("j"); ?> |
| โDโ | Restituisce le prime 3 lettere del nome del giorno [da domenica a sabato] |
<?php echo date("D"); ?> |
| "l" | Restituisce il nome del giorno della settimana [da domenica a sabato]. |
<?php echo date("l"); ?> |
| "Nel" | Restituisce il giorno della settimana senza zeri iniziali [da 0 a 6]; la domenica รจ rappresentata da zero (0) fino al sabato rappresentato da sei (6) |
<?php echo date("w"); ?> |
| "Z" | Restituisce il giorno dell'anno senza spazi iniziali [da 0 a 365] |
<?php echo date("z"); ?> |
Parametri mensili
| Parametro | Descrizione | Esempio |
|---|---|---|
| โMโ | Restituisce il numero del mese con zeri iniziali [da 01 a 12] |
<?php echo date("m"); ?> |
| "N" | Restituisce il numero del mese senza zeri iniziali [da 1 a 12] |
<?php echo date("n"); ?> |
| โMโ | Restituisce le prime 3 lettere del nome del mese [da gennaio a dicembre] |
<?php echo date("M"); ?> |
| "F" | Restituisce il nome del mese [da gennaio a dicembre] |
<?php echo date("F"); ?> |
| "T" | Restituisce il numero di giorni in un mese [da 28 a 31] |
<?php echo date("t"); ?> |
Parametri dell'anno
| Parametro | Descrizione | Esempio |
|---|---|---|
| "L" | Restituisce 1 se รจ un anno bisestile e 0 se non lo รจ. |
<?php echo date("L"); ?> |
| "Y" | Restituisce l'anno nel formato a quattro cifre |
<?php echo date("Y"); ?> |
| "Y" | Restituisce l'anno nel formato a due cifre (da 00 a 99). |
<?php echo date("y"); ?> |



