Come configurare smartphone e PC. Portale informativo
  • casa
  • Ferro da stiro
  • L'ora del server Php è attuale. Primo script PHP: visualizzazione della data e dell'ora

L'ora del server Php è attuale. Primo script PHP: visualizzazione della data e dell'ora

Diamo un'occhiata al codice di una pagina web reale e creiamo il nostro primo script php, ovvero visualizzare la data e l'ora corrente sul nostro sito. Questo scenario è usato abbastanza spesso sui siti e penso che sarà utile a molti.

Creiamo un altro file php e chiamiamolo time.php. abbiamo studiato prima, se ti sei dimenticato di ripetere.

Quindi abbiamo creato il file time.php e inserito questo file nella cartella myphp precedentemente creata su. Abbiamo studiato questo argomento nella lezione.

Apri il codice per il file time.php e tra i tag e prescriviamo il seguente codice, Listato 1:

Listato 1.

Oggi:

Ora attuale

Avviamo il server locale, digitiamo l'indirizzo nella barra degli indirizzi del browser http: //localhost/myphp/time.php e premi Invio. E vediamo questa immagine:

Attiro la vostra attenzione sul fatto che in questo caso viene visualizzata l'ora corrente del server, quelli. se, ad esempio, il server su cui "vive" il tuo sito si trova in un altro paese e l'ora corrente è diversa dall'ora di Mosca, anche il valore dell'ora visualizzato sarà diverso dall'ora di Mosca.

Diamo un'occhiata al codice Elenco 1. Etichette di testo normale " Oggi" e " Ora attuale"non vengono elaborati dal preprocessore PHP e vengono visualizzati così com'è". "Invece di queste voci, puoi scrivere qualsiasi testo, ad esempio, solo Data o Tempo eccetera.

Ed ecco il codice php racchiuso nei descrittoriPHP viene elaborato prima di essere passato al browser.

Come probabilmente hai già capito la funzione data in PHP responsabile della visualizzazione della data e dell'ora... I valori di visualizzazione della data e dell'ora sono indicati tra parentesi. Ci sono molti di questi valori in PHP e dedicheremo la prossima lezione separata a questa analisi e studio di tutti i possibili valori.

Dichiarazione Echo - si traduce in ritirare, in questo caso si intende visualizzare sullo schermo del monitor Data e Orario del server.

Lo stesso risultato (visualizzazione nel browser) può essere ottenuto inserendo l'intero script all'interno dei descrittori PHP. Aspetto Listato 2:

Elenco 2.

echo "Oggi:";
data eco ("j F Y");
echo "Ora attuale";
eco data ("H: i: s");
?>

Tutti gli elementi di testo destinati all'output devono essere racchiusi tra virgolette. Le stringhe di testo possono essere racchiuse sia tra virgolette singole che doppie, la differenza verrà discussa in seguito. Inserimenti:

echo "Oggi";

echo "Oggi";

sono completamente equivalenti e appaiono uguali.

Il carattere spazio prima delle virgolette di chiusura viene utilizzato per separare l'output della funzione data dal testo circostante. Tutti i comandi in PHP sono sempre separati da punto e virgola.

Per visualizzare la Data e l'Ora sul sito inserire il codice Listato 1 o Listato 2 nel posto giusto sulla tua pagina web. Per dare alle iscrizioni (data e ora) uno stile generale di design del sito, puoi usare.

P.S. Ti ricordo che il file in cui inserisci gli inserti PHP deve avere l'estensione .php e, inoltre, l'hosting su cui "vive" il tuo sito deve supportare PHP (oggi è quasi tutto

Nei sistemi distribuiti, il tempo gioca un ruolo speciale. A causa di una leggera discrepanza nelle ore di sistema, un giocatore Forex può perdere migliaia di dollari.

Data e ora PHP

Nei sistemi distribuiti come Internet, il tempo gioca un ruolo speciale. A causa di una leggera discrepanza nell'orologio di sistema, un giocatore nel mercato Forex può perdere decine di migliaia di dollari in pochi minuti; il sistema di business intelligence commetterà un errore nelle previsioni; I server NNTP nel processo di sincronizzazione perderanno importanti informazioni necessarie all'utente, ecc. PHP contiene molte funzioni per lavorare con data e ora. I più comunemente usati sono:

- restituisce l'ora assoluta corrente. Questo numero è uguale al numero di secondi trascorsi dalla mezzanotte del 1 gennaio 1970 (dall'inizio dell'era UNIX).

- legge le informazioni su data e ora. Restituisce un array associativo contenente informazioni per l'ora specificata o per l'ora corrente (per impostazione predefinita). L'array contiene i seguenti elementi:

Esempio 1

Usando getdate() // ha usato l'ora corrente foreach ($ d come $ chiave => $ val) echo " $ chiave = $ val
"
; eco "


Oggi: $ d. $ D. $ D "; ?>

Risultato 1

secondi = 21 minuti = 4 ore = 12 mgiorno = 10 wgiorno = 4 lun = 11 anno = 2005 ygiorno = 313 giorno della settimana = giovedì mese = novembre 0 = 1131613461 Oggi: 10.11.2005

- formattazione di data e ora. Argomenti: stringa di formato e tempo assoluto. Il secondo argomento è facoltativo. Restituisce una stringa con la data specificata o corrente nel formato specificato. La stringa di formato può contenere i seguenti codici:

un
UN Designazione inclusa "AM" o "PM"
D Giorno del mese (01-31)
D Nome abbreviato del giorno della settimana (tre lettere)
F Nome del mese completo
G Ore (formato di 12 ore senza zeri iniziali)
G Ore (formato 24 ore senza zeri iniziali)
h Orologio (formato 12 ore)
h Orologio (formato 24 ore)
io Minuti (00-59)
J Giorno del mese senza zeri iniziali (1-31)
io Nome completo del giorno della settimana
l Anno bisestile (0 o 1)
m Mese (01-12)
m Nome del mese abbreviato (tre lettere)
n Mese (1-12)
S Secondi (00-59)
T Numero di giorni in un determinato mese (da 28 a 31)
tu Tempo assoluto
w
Anno (due cifre)
Anno (quattro cifre)
z Giorno dell'anno (0-365)
Z Scostamento del fuso orario in secondi (da -43200 a 43200)

Qualsiasi altra informazione inclusa nella stringa di formato verrà inserita nella stringa restituita. Se si desidera aggiungere alla stringa di formato caratteri che siano essi stessi codici di formato, è necessario precederli con una barra rovesciata "\". I caratteri che diventano codici di formato quando aggiunti con una barra rovesciata devono essere preceduti da due barre. Ad esempio, se si desidera aggiungere "n" a una stringa, immettere "\\ n" perché "\ n" è un carattere di nuova riga.

Esempio 2

Usando la data ()

Risultato 2

Oggi: 10.11.05 13:03

- restituisce il tempo assoluto, che può quindi essere utilizzato con le funzioni Data () data di arrivo ()... Accetta fino a sei argomenti interi nel seguente ordine:

  1. minuti
  2. secondi
  3. mese
  4. mesi

Esempio 3

Usando mktime () \\ t g.i a, l ", mktime (13, 30, 0, 1, 22, 1971)); ?>

Risultato 3

- verifica della correttezza della data. Argomenti: mese, giorno, anno. Restituisce vero se la data è corretta, ad es.

  1. mese - un numero intero da 1 a 12;
  2. day è un numero intero non superiore al numero totale di giorni in un determinato mese. In questo caso, gli anni bisestili vengono gestiti correttamente;
  3. anno è un numero intero compreso tra 1 e 32767.

Esempio 4

if (! checkdate ($ mese, 1, $ anno)) ($ d = getdate (); $ mese = $ d [mon]; $ anno = $ d [anno];)

Attenzione! La data può essere compresa in un intervallo valido, ma altre funzioni di data non accetteranno questo valore. Quindi, non puoi usare tempo di percorrenza () per gli anni precedenti al 1902 e dovrebbe essere usato con parsimonia anche per gli anni precedenti al 1970.

- formazione della data e dell'ora locali. Argomenti: stringa di formato e tempo assoluto. Il secondo argomento è facoltativo. Restituisce una stringa con la data specificata o corrente nel formato specificato. In questo caso, i nomi dei mesi e dei giorni della settimana vengono estratti dalle impostazioni locali selezionate tramite la funzione setlocalizza()
La stringa di formato può contenere i seguenti codici:

% un Nome abbreviato del giorno della settimana
% UN Nome completo del giorno della settimana
% B Nome del mese abbreviato
% B Nome del mese completo
% C Formato di data e ora preferito
% C Numero del secolo
% D Giorno del mese (1-31)
% D Uguale a % m /% d /% aa
% e Mese (1-12)
% h Uguale a % B
% H Orologio (formato 24 ore)
% IO Orologio (formato 12 ore)
% J Giorno dell'anno (0-365)
% m Mese (1-12)
% M Minuti
% n Carattere di nuova riga
% P Notazione 'Am' o 'pm' inclusa
% R Ora utilizzando la notazione a.m./p.m.
% R Ora in formato 24 ore
% S Secondi (00-59)
% T Carattere di tabulazione
% T Uguale a % H:% M:% S
% u Numero del giorno della settimana (1 - lunedì, 7 - domenica)
% U Numero della settimana. Il conto alla rovescia parte dalla prima domenica dell'anno
% V ISO 8601: numero della settimana 1988. La prima settimana deve avere almeno quattro giorni e il lunedì è considerato il primo giorno
% W Numero della settimana. Il conto alla rovescia inizia dal primo lunedì dell'anno
% w Numero del giorno della settimana (0 - domenica, 6 - sabato)
% X Formato della data preferito senza ora
% X Formato dell'ora preferito senza data
% y Anno (due cifre)
% Sì Anno (quattro cifre)
% Z Fuso orario (nome o abbreviazione)
%% Simbolo "%"

Qualsiasi altra informazione inclusa nella stringa di formato verrà inserita nella stringa restituita.

Esempio 5

Utilizzo di strftime() % d% B% Y% H:% M
" ); segnalazione_errore (E_ALL & ~ E_WARNING); setlocale ("LC_ALL", ""); echo strftime ("Oggi% A % d% B% Y% X
"
); echo strftime ("% Z
" ) ; ?>

JavaScript è bloccato nel tuo browser. Si prega di abilitare JavaScript affinché il sito funzioni!

Rappresentazione di data e ora

Nei sistemi distribuiti come Internet, il tempo gioca un ruolo speciale. A causa di una leggera discrepanza nell'orologio di sistema, un giocatore nel mercato Forex può perdere decine di migliaia di dollari in pochi minuti; il sistema di business intelligence commetterà un errore nelle previsioni; I server NNTP nel processo di sincronizzazione perderanno importanti informazioni necessarie all'utente, ecc.

PHP contiene molte funzioni per lavorare con data e ora. I più comunemente usati sono:

  • tempo ()- restituisce l'ora assoluta corrente. Questo numero è uguale al numero di secondi trascorsi dalla mezzanotte del 1 gennaio 1970 (dall'inizio dell'era UNIX).
  • data di arrivo ()- legge le informazioni su data e ora. Restituisce un array associativo contenente informazioni per l'ora specificata o per l'ora corrente (per impostazione predefinita). L'array contiene i seguenti elementi:

    Esempio 1

    Usando getdate() $ val) echo "$ chiave = $ val
    "; eco"
    Oggi: $ d. $ D. $ D ";?>

    RISULTATO DELL'ESEMPIO 1:

    Secondi = 21 minuti = 4 ore = 12 mgiorno = 10 wgiorno = 4 lun = 11 anno = 2005 ygiorno = 313 giorno della settimana = giovedì mese = novembre 0 = 1131613461 Oggi: 10/11/2005

  • Data ()- formattazione di data e ora. Argomenti: stringa di formato e tempo assoluto. Il secondo argomento è facoltativo. Restituisce una stringa con la data specificata o corrente nel formato specificato. La stringa di formato può contenere i seguenti codici:
    un
    UNDesignazione inclusa "AM" o "PM"
    DGiorno del mese (01-31)
    DNome abbreviato del giorno della settimana (tre lettere)
    FNome del mese completo
    GOre (formato di 12 ore senza zeri iniziali)
    GOre (formato 24 ore senza zeri iniziali)
    hOrologio (formato 12 ore)
    hOrologio (formato 24 ore)
    ioMinuti (00-59)
    JGiorno del mese senza zeri iniziali (1-31)
    ioNome completo del giorno della settimana
    lAnno bisestile (0 o 1)
    mMese (01-12)
    mNome del mese abbreviato (tre lettere)
    nMese (1-12)
    SSecondi (00-59)
    TNumero di giorni in un determinato mese (da 28 a 31)
    tuTempo assoluto
    w
    Anno (due cifre)
    Anno (quattro cifre)
    zGiorno dell'anno (0-365)
    ZScostamento del fuso orario in secondi (da -43200 a 43200)

    Qualsiasi altra informazione inclusa nella stringa di formato verrà inserita nella stringa restituita. Se si desidera aggiungere alla stringa di formato caratteri che siano essi stessi codici di formato, è necessario precederli con una barra rovesciata "\". I caratteri che diventano codici di formato quando aggiunti con una barra rovesciata devono essere preceduti da due barre. Ad esempio, se si desidera aggiungere "n" a una stringa, immettere "\\ n" perché "\ n" è un carattere di nuova riga.

    Esempio 2

    Usando la data ()

    RISULTATO DELL'ESEMPIO 2:

    Oggi: 10.11.05 13:03

  • tempo di percorrenza ()- restituisce l'ora assoluta, che può essere utilizzata con le funzioni date() o getdate(). Accetta fino a sei argomenti interi nel seguente ordine:

    Orologio
    minuti
    secondi
    mese
    giorno del mese
    anno

    Esempio 3

    Usando mktime ()

    RISULTATO DELL'ESEMPIO 3:

  • data di controllo ()- verifica della correttezza della data. Argomenti: mese, giorno, anno. Restituisce vero se la data è corretta, ad es.
    mese - un numero intero da 1 a 12;
    day è un numero intero non superiore al numero totale di giorni in un determinato mese. In questo caso, gli anni bisestili vengono gestiti correttamente;
    anno è un numero intero compreso tra 1 e 32767.

    Per esempio:

    If (! Checkdate ($ mese, 1, $ anno)) ($ d = getdate (); $ mese = $ d; $ anno = $ d;)

    Attenzione! La data può essere compresa in un intervallo valido, ma altre funzioni di data non accetteranno questo valore. Quindi, non puoi usare mktime () per anni prima del 1902 e dovresti anche usarlo con attenzione per anni prima del 1970.

  • strftime ()- formazione della data e dell'ora locali. Argomenti: stringa di formato e tempo assoluto. Il secondo argomento è facoltativo. Restituisce una stringa con la data specificata o corrente nel formato specificato. In questo caso i nomi dei mesi e dei giorni della settimana vengono estratti dalla locale selezionata tramite la funzione Format string può contenere i seguenti codici:
    % unNome abbreviato del giorno della settimana
    % UNNome completo del giorno della settimana
    % BNome del mese abbreviato
    % BNome del mese completo
    % CFormato di data e ora preferito
    % CNumero del secolo
    % DGiorno del mese (1-31)
    % DUguale a % m /% d /% aa
    % eMese (1-12)
    % hUguale a % B
    % HOrologio (formato 24 ore)
    % IOOrologio (formato 12 ore)
    % JGiorno dell'anno (0-365)
    % mMese (1-12)
    % MMinuti
    % nCarattere di nuova riga
    % PLa designazione "am" o "pm" è inclusa
    % ROra utilizzando la notazione a.m./p.m.
    % ROra in formato 24 ore
    % SSecondi (00-59)
    % TCarattere di tabulazione
    % TUguale a % H:% M:% S
    % uNumero del giorno della settimana (1 - lunedì, 7 - domenica)
    % UNumero della settimana. Il conto alla rovescia parte dalla prima domenica dell'anno
    % VISO 8601: numero della settimana 1988. La prima settimana deve avere almeno quattro giorni e il lunedì è considerato il primo giorno
    % WNumero della settimana. Il conto alla rovescia inizia dal primo lunedì dell'anno
    % wNumero del giorno della settimana (0 - domenica, 6 - sabato)
    % XFormato della data preferito senza ora
    % XFormato dell'ora preferito senza data
    % yAnno (due cifre)
    % SìAnno (quattro cifre)
    % ZFuso orario (nome o abbreviazione)
    %% Simbolo "%"

    Qualsiasi altra informazione inclusa nella stringa di formato verrà inserita nella stringa restituita.

Ovviamente, molto spesso i programmatori devono lavorare con data e ora... L'esempio più semplice è la data e l'ora in cui il messaggio è stato pubblicato sul forum. E, naturalmente, cose del genere possono essere realizzate su PHP, tanto più che le possibilità per lavorare con data e ora in PHP così tanti.

Funzione di base associata a data e ora in PHP, - questo è funzione tempo () che restituisce il numero di secondi trascorsi da mezzanotte 01/01/1970(l'inizio dell'era Unix):

tempo di eco ();
?>

Eseguendo questo script, scoprirai quanti secondi sono passati da allora mezzanotte 01/01/1970 fino alla chiamata funzioni tempo () nel tuo copione.

Naturalmente, oltre a questa funzione di base, che è presente in tutti i linguaggi di programmazione in cui è possibile lavorare con data e ora(almeno tra quelli che conosco) c'è un'altra funzione chiamata data di arrivo ():

$ datetime = getdate ();
foreach ($ datetime come $ k => $ v)
echo "$ k - $ v
";
?>

Eseguendo questo script, vedrai un insieme di chiavi nell'array e i loro valori corrispondenti (allo stesso tempo, hai ripetuto la costruzione per ciascuno). Penso che ora non sarà difficile per te scoprire tutti i dati relativi a data e ora... Ad esempio, per visualizzare l'ora corrente, dovresti scrivere il seguente codice:

$ datetime = getdate ();
echo $ datetime ["ore"]. ":". $ datetime ["minuti"]. ":". $ datetime ["secondi"];
?>

Avere anche funzioni getdate() esiste un parametro opzionale che indica il numero di secondi trascorsi da quando mezzanotte 01/01/1970... È fatto in modo che questa funzione possa restituire non solo l'ora e la data correnti, ma, in generale, qualsiasi:

$ datetime = getdate (152353232);
echo $ datetime ["anno"];
?>

Di conseguenza, vedrai 1974 anno.

C'è anche data () funzione... Consiglio di guardare la sua descrizione nel manuale, poiché questa funzione richiede un parametro molto complesso che imposta il formato per la visualizzazione della data. Ci sono poco più di 30 elementi di formattazione. E nell'esempio seguente, ne darò alcuni e guarderò il resto nel libro di riferimento, perché non è necessario memorizzarli, ma è altamente desiderabile familiarizzare con loro. E il principio del loro uso è necessario conoscere, e il seguente esempio a riguardo:

echo date ("Oggi è d.m.Y H: i: s");
?>

Di conseguenza, vedrai qualcosa del genere: " Oggi 15/11/2010 21:44:24". Avere anche data() funzioni c'è anche un secondo parametro opzionale che imposta marca temporale, solo quel valore pari al numero di secondi trascorsi da mezzanotte 01/01/1970... Un esempio di utilizzo del secondo parametro:

echo date ("C'era una volta d.m.Y H: i: s", 5393235329);
?>

C'è anche gmdate() funzione, che è un completo analogo data() funzioni, ma gmdate() funzione mostra l'ora non in base al fuso orario del server su cui è in esecuzione lo script, ma in base a Greenwich... Ovviamente, utilizzando questa funzione, è necessario salvare tutte le informazioni sulla data e l'ora che l'utente vede e, durante la visualizzazione, è necessario adeguarsi al fuso orario di ciascun utente (idealmente, ovviamente):

echo gmdate ("Ora a Greenwich D M j H: i: s T Y")
?>

Di conseguenza, vedrai qualcosa di simile al seguente: " Lun 15 novembre 18:52:45 GMT 2010". Naturalmente, verrà visualizzata una data diversa, ma in un formato simile. Consiglio vivamente anche di entrare nella directory e familiarizzare con altri elementi della data e dell'ora in PHP(Ho dato solo un terzo), poiché funzioni date() e gmdate()- questo è il modo più semplice e veloce ottenere data e ora in quasi tutti i formati.

Tra le varie attività di programmazione, sono abbastanza comuni varie manipolazioni con valori di data e ora. Un raro sistema automatizzato, un database può fare a meno di memorizzare informazioni sul tempo di un particolare processo. Oltre alla più semplice aggiunta di una data a un record del database o alla visualizzazione di questa data, ci sono molte attività per visualizzare queste date in varie forme, controllare se l'ora corrente corrisponde a un determinato timer, calcolare il periodo tra due date e molto altro.

Per la comodità di lavorare con le date, ogni linguaggio di programmazione ha i propri tipi di dati speciali per memorizzare i valori di data e ora. Molto spesso si tratta di un valore numerico, intero o in virgola mobile.

In PHP, lavorare con le date interferisce molto spesso con UNIX TIMESTAMP. L'ora viene memorizzata qui come numero intero. Il tempo inizia dal 1 gennaio 1970. Pertanto, ad esempio, la data e l'ora del 12/11/2014 19:40:00 saranno rappresentate dal numero 1418316000. Questa cifra mostra quanti secondi sono trascorsi dalla data zero del 1 gennaio 1970, chiamata Era Unix .

Un esempio di una pagina php che fornisce funzionalità di conversione dei dati è presentato sul sito nella sezione del programma del programma "Conversione del formato di data e ora". Qui puoi formare la data desiderata nel formato UNIX TIMESTAMP, oltre a portare questo formato in un formato standard leggibile dall'uomo.

Ottenere l'ora e la data correnti in PHP

Per ottenere l'ora corrente del server, utilizzare la funzione

int tempo (vuoto)

che restituirà semplicemente il valore in formato timestamp unix.

tempo di eco (); // visualizza l'ora corrente in formato timestamp unix

A prima vista, non è un formato molto conveniente per una persona, ma, come sai, più semplice è la presentazione dei dati, più veloce è l'elaborazione di questi valori da parte del computer. Inoltre, memorizzare un numero in un database è molto più economico di qualsiasi formato speciale. Inoltre, PHP funziona nel tempo allo stesso modo su entrambe le piattaforme Unix e Windows, il che rende possibile l'utilizzo del codice su una qualsiasi di queste piattaforme.

Conversione del formato di data e ora in PHP

Il meccanismo più semplice per convertire un valore di data numerico in valori più significativi è fornito da una funzione:

matrice getdate()

Restituisce un array associativo contenente informazioni sulla data. Se il parametro timestamp non è specificato, verranno restituite le informazioni sull'ora corrente. Questo array contiene i seguenti valori:

L'array risultante consente di visualizzare i valori nella forma desiderata:

$ data = 1418372345;
$ date_mas = getdate ($ date);
echo $ date_mas ["giorno"]. "." $ date_mas ["lun"]. "." $ date_mas ["anno"]; // 12.12.2014


Puoi anche utilizzare la funzione per convertire il formato della data e dell'ora:

data stringa (string $ template [, int $ unix_timestamp])

È progettato per ottenere la data di timestamp unix corrente nel formato richiesto. Il parametro stringa $ template definisce il formato di output. Il parametro $ unix_timestamp può essere utilizzato per impostare il valore dell'ora con cui lavorare. È facoltativo, quindi se non lo specifichi, verranno utilizzate la data e l'ora correnti.

Il formato è specificato dai seguenti valori:

un"prima" e "dopo" mezzogiorno: "am" o "pm"
UN"prima" e "dopo" mezzogiorno in lettere maiuscole: "AM" o "PM"
Dgiorno del mese in 2 cifre (se inferiore a 10, zero al primo posto) (da 01 a 31)
Dgiorno della settimana in 3 lettere. Ad esempio, "lunedì" (lunedì)
Jgiorno del mese, 1-2 cifre senza zeri iniziali (da 1 a 31)
Fnome del mese. Ad esempio, "gennaio"
hora, formato 12 ore (da 01 a 12)
hora, formato 24 ore (dalle 00 alle 23)
Gora, formato 12 ore senza zeri (da 1 a 12)
Gora, formato 24 ore senza zeri (da 0 a 23)
iominuti (da 00 a 59)
io (i maiuscola)1, se è in vigore l'ora legale, altrimenti 0
l1 se l'anno è bisestile o 0 se non bisestile
Bora in formato Internet (ora alternativa) (da 000 a 999)
Tfuso orario del computer. Ad esempio MDT
l (L minuscola)giorno della settimana. Ad esempio, "lunedì"
mmese, due cifre seguite da zero (da 01 a 12)
nmese, una o due cifre senza zeri (da 1 a 12)
mnome abbreviato del mese. Ad esempio, "gennaio"
Til numero di giorni nel mese specificato (da 28 a 31)
Ssecondi (da 0 a 59)
SSuffisso ordinale in lingua inglese di un numero di due lettere ("st", "nd", "rd" o "th")
tuun numero intero di secondi dall'inizio dell'era UNIX
anno, numerico, 2 cifre (14)
anno, numerico, 4 cifre (2014)
znumero ordinale di un giorno in un anno (da 0 a 365)
Zmiscelazione fuso orario in secondi (da -43200 a 43200)
nil numero ordinale del giorno della settimana da 1 (lunedì) a 7 (domenica) secondo lo standard ISO-8601, (aggiunto in PHP 5.1.0)
wnumero progressivo del giorno della settimana da 0 (domenica) a 6 (sabato)
Wil numero ordinale della settimana dell'anno secondo lo standard ISO-8601; le settimane iniziano da lunedì (aggiunto in PHP 4.1.0)
onumero dell'anno secondo lo standard ISO-8601. Ha lo stesso significato di Y, tranne se il numero della settimana ISO (W) è nell'anno precedente o successivo; quindi verrà utilizzato l'anno di quella settimana. (aggiunto in PHP 5.1.0)
ecodice del fuso orario. Ad esempio: UTC, GMT, Atlantico/Azzorre (aggiunto in PHP 5.1.0)
ohdifferenza da GMT, in ore. Ad esempio: +0200
Pdifferenza dal GMT con i due punti tra ore e minuti. Ad esempio: +02: 00 (aggiunto in PHP 5.1.3)
Cdata in formato ISO 8601. Ad esempio, 2014-12-12T15: 19: 21 + 00: 00 (aggiunto in PHP 5)
Rdata nel formato "RFC 2822. Ad esempio: Thu, 21 Dec 2000 16:01:07 +0200
tunumero di secondi dall'inizio di Unix Epoch (The Unix Epoch, 1 gennaio 1970 00:00:00 GMT)

Come puoi vedere dall'elenco, ci sono molti dati utili sulla data che possono essere ottenuti usando questa funzione. Per esempio:

$ data = 1418372345; // data e ora originali 12.12.2014 11:19:05

echo date ("d.m.Y", $ date); // 12.12.2014 (data)
echo data ("H: i: s", $ data); // 11:19:05 (ora)
echo data ("H: i", $ data); // 11:19 (ora)
echo data ("t", $ data); // 31 (numero di giorni in un mese)
echo data ("z", $ data); // 345 (numero ordinale del giorno dell'anno)
echo date ("l dS \ di F Y h: i: s A", $ data); // Venerdì 12 dicembre 2014 11:19:05

Gli altri caratteri inclusi nel motivo verranno visualizzati sulla linea così come sono. Se è necessario inserire un carattere che viene utilizzato come codice di formato nella funzione, viene inserito un carattere "\" davanti a essi. Per il valore "\ n" (carattere di nuova riga), specificare "\\ n". Pertanto, puoi disegnare l'output di un intero messaggio contenente informazioni sulla data e l'ora:

data di eco ( "Oggi è il z-esimo giorno dell'anno Y", $ data); // Oggi è il 345° giorno del 2014

Converti data e ora in formato timestamp

Per riconvertire la data dal formato standard a un valore di timestamp numerico, utilizzare la funzione:

int mktime (]]]]]])

La funzione mktime() restituisce il valore dell'ora Unix corrispondente alla data e all'ora specificate negli argomenti. Per esempio:

$ my_date = mktime (10, 30, 0, 12, 12, 2014);

È necessario prestare attenzione all'ordine degli argomenti della funzione: ore, minuti, secondi, mese, giorno, anno.

Oltre a generare semplicemente un valore di data in un timestamp, la funzione mktime() può essere utilizzata per l'aritmetica con le date. Per fare ciò, puoi semplicemente inserire gli argomenti richiesti. Ad esempio, se specifichi il mese 14, nel valore totale il mese sarà il 2 e il valore dell'anno aumenterà di uno:

$ mio_giorno = 12;
$ mio_mese = 12;
$ mio_anno = 2014;

$ new_date = mktime (0, 0, 0, $ mio_mese + 5, $ mio_giorno, $ mio_anno);

echo date ("d.m.Y", $ new_date); // 05/12/2015 (data)

Puoi fare lo stesso con altri parametri.

Convalida della data PHP

Quando si lavora con le date, specialmente quando si forma una data utilizzando la funzione sopra mktime (), è necessario tenere conto della correttezza della data inserita. Per fare ciò, PHP utilizza la funzione:

bool checkdate (int mese, int giorno, int anno)

Restituisce vero se la data fornita negli argomenti è corretta; altrimenti restituisce false. La data è considerata corretta se:

Anno compreso tra 1 e 32767;

Mese compreso tra 1 e 12;

Il giorno del mese dato, compreso l'anno bisestile, è corretto.

Esempio di controllo della data:

$ mio_giorno = 32;
$ mio_mese = 12;
$ mio_anno = 2014;

if (! checkdate ($ mio_mese, $ mio_giorno, $ mio_anno))
eco "Errore: data specificata in modo errato";

Principali articoli correlati