Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Interesant
  • Ora actuală a serverului PHP. Exemple de utilizare a datei și orei în php

Ora actuală a serverului PHP. Exemple de utilizare a datei și orei în php

În sistemele distribuite, timpul joacă un rol deosebit. Din cauza unei ușoare discrepanțe în orele de sistem, un jucător Forex poate pierde mii de dolari.

Data și ora PHP

În sistemele distribuite precum Internetul, timpul joacă un rol deosebit. Din cauza unei ușoare discrepanțe în ceasul sistemului, un jucător de pe piața Forex poate pierde zeci de mii de dolari în câteva minute; sistemul de business intelligence va face o greșeală în prognoză; Serverele NNTP în procesul de sincronizare vor pierde informații importante necesare utilizatorului etc. PHP conține multe funcții pentru lucrul cu data și ora. Cele mai frecvent utilizate sunt:

- returnează timpul absolut curent. Acest număr este egal cu numărul de secunde care au trecut de la miezul nopții 1 ianuarie 1970 (de la începutul erei UNIX).

- citește informații despre dată și oră. Returnează o matrice asociativă care conține informații pentru ora specificată sau pentru ora curentă (în mod implicit). Matricea conține următoarele elemente:

Exemplul 1

Folosind getdate () // a folosit ora curentă foreach ($ d ca $ cheie => $ val) echo " $ cheie = $ val
"
; ecou "


Astăzi: $ d. $ D. $ D "; ?>

Rezultatul 1

secunde = 21 minute = 4 ore = 12 mday = 10 wday = 4 luni = 11 year = 2005 yday = 313 weekday = joi luna = noiembrie 0 = 1131613461 Astăzi: 10.11.2005

- formatarea datei și orei. Argumente: șir de format și timp absolut. Al doilea argument este opțional. Returnează un șir cu data specificată sau curentă în formatul specificat. Șirul de format poate conține următoarele coduri:

A
A Desemnarea inclusă „AM” sau „PM”
d Ziua lunii (01-31)
D Numele prescurtat al zilei săptămânii (trei litere)
F Numele întregii luni
g Ore (format de 12 ore fără zerouri la început)
G Ore (format de 24 de ore fără zerouri la început)
h Ceas (format 12 ore)
H Ceas (format 24 de ore)
i Minute (00-59)
j Ziua lunii fără zerouri de început (1-31)
l Numele complet al zilei săptămânii
L An bisect (0 sau 1)
m Luna (01-12)
M Numele lunii prescurtat (trei litere)
n Luna (1-12)
s Secunde (00-59)
t Numărul de zile dintr-o anumită lună (28 - 31)
U Timp absolut
w
y Anul (două cifre)
Y An (patru cifre)
z Ziua anului (0-365)
Z Compensarea fusului orar în secunde (-43200 la 43200)

Orice altă informație inclusă în șirul de format va fi inserată în șirul returnat. Dacă doriți să adăugați caractere la șirul de format care sunt coduri de format în sine, trebuie să le precedați cu o bară oblică inversă „\”. Caracterele care devin coduri de format atunci când sunt adăugate cu o bară oblică inversă trebuie să fie precedate de două bare oblice. De exemplu, dacă doriți să adăugați „n” la un șir, ați introduce „\\ n” deoarece „\ n” este un caracter newline.

Exemplul 2

Se utilizează data ()

Rezultatul 2

Astăzi: 10.11.05 13:03

- returnează timpul absolut, care poate fi apoi folosit cu funcții Data () getdate ()... Acceptă până la șase argumente întregi în următoarea ordine:

  1. minute
  2. secunde
  3. lună
  4. luni

Exemplul 3

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

Rezultatul 3

- verificarea corectitudinii datei. Argumente: luna, zi, an. Returnează adevărat dacă data este corectă, de ex.

  1. lună - un număr întreg de la 1 la 12;
  2. ziua este un număr întreg care nu depășește numărul total de zile dintr-o anumită lună. În acest caz, anii bisecți sunt tratați corect;
  3. anul este un număr întreg de la 1 la 32767.

Exemplul 4

dacă (! data de verificare ($ luna, 1, $ an)) ($ d = getdate (); $ luna = $ d [lună]; $ an = $ d [an];)

Atenţie! Data poate fi într-un interval valid, dar alte funcții de dată nu vor accepta această valoare. Deci, nu puteți folosi mktime () pentru anii anteriori anului 1902 și ar trebui să fie, de asemenea, utilizat cu moderație pentru anii anteriori anului 1970.

- formarea datei și orei locale. Argumente: șir de format și timp absolut. Al doilea argument este opțional. Returnează un șir cu data specificată sau curentă în formatul specificat. În acest caz, numele lunilor și zilelor săptămânii sunt extrase din localitatea selectată folosind funcția setlocate ()
Șirul de format poate conține următoarele coduri:

% A Numele prescurtat al zilei săptămânii
% A Numele complet al zilei săptămânii
% b Numele lunii prescurtat
% B Numele întregii luni
% c Format de dată și oră preferat
% C Numărul secolului
% d Ziua lunii (1-31)
% D La fel ca % m /% d /% y
% e Luna (1-12)
% h La fel ca % b
% H Ceas (format 24 de ore)
% I Ceas (format 12 ore)
% j Ziua anului (0-365)
% m Luna (1-12)
% M Minute
% n Caracter Newline
% p Notația „Am” sau „pm” este inclusă
% r Ora folosind notația a.m./p.m
% R Ora în format de 24 de ore
% S Secunde (00-59)
% t Caracter tabulator
% T La fel ca % H:% M:% S
% u Numărul zilei săptămânii (1 - luni, 7 - duminică)
% U Numărul săptămânii. Numărătoarea inversă începe din prima duminică a anului
% V ISO 8601: numărul săptămânii 1988. Prima săptămână trebuie să aibă cel puțin patru zile, iar luni este considerată prima zi
% W Numărul săptămânii. Numărătoarea inversă începe din prima zi de luni a anului
% v Numărul zilei săptămânii (0 - duminică, 6 - sâmbătă)
% X Format preferat de dată fără oră
% X Formatul de oră preferat fără dată
% y Anul (două cifre)
% Y An (patru cifre)
% Z Fus orar (nume sau abreviere)
%% Simbolul „%”

Orice altă informație inclusă în șirul de format va fi inserată în șirul returnat.

Exemplul 5

Folosind strftime () % d% B% Y% H:% M
" ); raportare_erori (E_ALL & ~ E_WARNING); setlocale ("LC_ALL", ""); echo strftime ("Azi% A % d% B% Y% X
"
); echo strftime ("% Z
" ) ; ?>

Evident, de foarte multe ori programatorii trebuie lucrați cu data și ora... Cel mai simplu exemplu este data și ora la care mesajul a fost postat pe forum. Și, desigur, astfel de lucruri pot fi realizate PHP, mai ales ca posibilitatile pentru lucrul cu data și ora în PHP Multe.

Funcția de bază asociată cu data și ora în PHP, - aceasta funcția de timp (). care returnează numărul de secunde scurse de atunci miezul nopții 01.01.1970(începutul erei Unix):

timpul ecou ();
?>

Rulând acest script, veți afla câte secunde au trecut de atunci miezul nopții 01.01.1970 până la apel funcții de timp ().în scenariul tău.

Desigur, pe lângă această funcție de bază, care este prezentă în toate limbajele de programare unde puteți lucrați cu data și ora(cel puțin printre cei pe care îi cunosc) există o altă funcție numită getdate ():

$ datetime = getdate ();
foreach ($ datetime ca $ k => $ v)
ecou "$ k - $ v
";
?>

Prin rularea acestui script, veți vedea un set de chei în matrice și valorile lor corespunzătoare (în același timp, ați repetat construcția pentru fiecare). Cred că acum nu vă va fi greu să aflați date legate de data si ora... De exemplu, pentru a afișa ora curentă, trebuie să scrieți următorul cod:

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

De asemenea, au funcții getdate (). există un parametru opțional care înseamnă numărul de secunde scurse de atunci miezul nopții 01.01.1970... Este făcută astfel încât această funcție să poată returna nu numai ora și data curente, ci, în general, orice:

$ datetime = getdate (152353232);
echo $ datetime [„an”];
?>

Ca rezultat, vei vedea 1974 an.

De asemenea este si data () funcție... Recomand să vă uitați la descrierea acestuia în manual, deoarece această funcție preia un parametru foarte complex care setează formatul de afișare a datei. Există puțin mai mult de 30 de elemente de formatare. Și în exemplul de mai jos, voi da câteva dintre ele și voi privi restul în cartea de referință, pentru că nu trebuie să le memorați, dar este foarte de dorit să vă familiarizați cu ele. Și este imperativ să cunoașteți principiul utilizării lor, iar următorul exemplu este despre acesta:

data ecou ("Astăzi este d.m.Y H: i: s");
?>

Ca rezultat, veți vedea ceva de genul acesta: " Astăzi 15.11.2010 21:44:24". De asemenea, au date () funcții există și un al doilea parametru opțional care se stabilește timestamp-ul, doar acea valoare egală cu numărul de secunde scurse de la miezul nopții 01.01.1970... Un exemplu de utilizare a celui de-al doilea parametru:

data echo („A fost odată d.m.Y H: i: s”, 5393235329);
?>

De asemenea este si funcția gmdate ()., care este un analog complet date () funcții, dar funcția gmdate (). arată ora nu după fusul orar al serverului pe care rulează scriptul, ci după Greenwich... Evident, folosind această funcție, trebuie să salvați toate informațiile despre data și ora pe care utilizatorul le vede, iar la afișare, trebuie să vă adaptați la fusul orar al fiecărui utilizator (ideal, desigur):

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

Ca rezultat, veți vedea ceva de genul următor: " Luni, 15 noiembrie, 18:52:45 GMT 2010". Bineînțeles, veți avea afișată o dată diferită, dar într-un format similar. De asemenea, vă recomand insistent să intrați în director și să vă familiarizați cu alte elemente ale datei și orei din PHP(Am dat doar o treime), din moment ce funcțiile date () și gmdate ().- acesta este cel mai simplu și rapid mod obține data și oraîn aproape orice format.

JavaScript este blocat în browserul dvs. Vă rugăm să activați JavaScript pentru ca site-ul să funcționeze!

Reprezentarea datei și orei

În sistemele distribuite precum Internetul, timpul joacă un rol deosebit. Din cauza unei ușoare discrepanțe în ceasul sistemului, un jucător de pe piața Forex poate pierde zeci de mii de dolari în câteva minute; sistemul de business intelligence va face o greșeală în prognoză; Serverele NNTP în procesul de sincronizare vor pierde informații importante necesare utilizatorului etc.

PHP conține multe funcții pentru lucrul cu data și ora. Cele mai frecvent utilizate sunt:

  • timp ()- returnează timpul absolut curent. Acest număr este egal cu numărul de secunde care au trecut de la miezul nopții 1 ianuarie 1970 (de la începutul erei UNIX).
  • getdate ()- citește informații despre dată și oră. Returnează o matrice asociativă care conține informații pentru ora specificată sau pentru ora curentă (în mod implicit). Matricea conține următoarele elemente:

    Exemplul 1

    Folosind getdate () $ val) echo „$ cheie = $ val
    "; ecou"
    Astăzi: $ d. $ D. $ D ";?>

    REZULTAT EXEMPLULUI 1:

    Secunde = 21 minute = 4 ore = 12 mday = 10 wday = 4 luni = 11 year = 2005 yday = 313 weekday = joi luna = noiembrie 0 = 1131613461 Astăzi: 11/10/2005

  • Data ()- formatarea datei și orei. Argumente: șir de format și timp absolut. Al doilea argument este opțional. Returnează un șir cu data specificată sau curentă în formatul specificat. Șirul de format poate conține următoarele coduri:
    A
    ADesemnarea inclusă „AM” sau „PM”
    dZiua lunii (01-31)
    DNumele prescurtat al zilei săptămânii (trei litere)
    FNumele întregii luni
    gOre (format de 12 ore fără zerouri la început)
    GOre (format de 24 de ore fără zerouri la început)
    hCeas (format 12 ore)
    HCeas (format 24 de ore)
    iMinute (00-59)
    jZiua lunii fără zerouri de început (1-31)
    lNumele complet al zilei săptămânii
    LAn bisect (0 sau 1)
    mLuna (01-12)
    MNumele lunii prescurtat (trei litere)
    nLuna (1-12)
    sSecunde (00-59)
    tNumărul de zile dintr-o anumită lună (28 - 31)
    UTimp absolut
    w
    yAnul (două cifre)
    YAn (patru cifre)
    zZiua anului (0-365)
    ZCompensarea fusului orar în secunde (-43200 la 43200)

    Orice altă informație inclusă în șirul de format va fi inserată în șirul returnat. Dacă doriți să adăugați caractere la șirul de format care sunt coduri de format în sine, trebuie să le precedați cu o bară oblică inversă „\”. Caracterele care devin coduri de format atunci când sunt adăugate cu o bară oblică inversă trebuie să fie precedate de două bare oblice. De exemplu, dacă doriți să adăugați „n” la un șir, ați introduce „\\ n” deoarece „\ n” este un caracter newline.

    Exemplul 2

    Se utilizează data ()

    REZULTAT EXEMPLULUI 2:

    Astăzi: 10.11.05 13:03

  • mktime ()- returnează ora absolută, care poate fi apoi utilizată cu funcțiile date () sau getdate (). Acceptă până la șase argumente întregi în următoarea ordine:

    Ceas
    minute
    secunde
    lună
    ziua lunii
    an

    Exemplul 3

    Folosind mktime ()

    REZULTAT EXEMPLULUI 3:

  • data de verificare ()- verificarea corectitudinii datei. Argumente: luna, zi, an. Returnează adevărat dacă data este corectă, de ex.
    lună - un număr întreg de la 1 la 12;
    ziua este un număr întreg care nu depășește numărul total de zile dintr-o anumită lună. În acest caz, anii bisecți sunt tratați corect;
    anul este un număr întreg de la 1 la 32767.

    De exemplu:

    Dacă (! Data de verificare ($ luna, 1, $ an)) ($ d = getdate (); $ luna = $ d; $ an = $ d;)

    Atenţie! Data poate fi într-un interval valid, dar alte funcții de dată nu vor accepta această valoare. Deci, nu puteți folosi mktime () pentru ani înainte de 1902 și ar trebui să îl utilizați cu atenție și pentru ani înainte de 1970.

  • strftime ()- formarea datei și orei locale. Argumente: șir de format și timp absolut. Al doilea argument este opțional. Returnează un șir cu data specificată sau curentă în formatul specificat. În acest caz, numele lunilor și zilelor săptămânii sunt extrase din localitatea selectată folosind funcția Format șir poate conține următoarele coduri:
    % ANumele prescurtat al zilei săptămânii
    % ANumele complet al zilei săptămânii
    % bNumele lunii prescurtat
    % BNumele întregii luni
    % cFormat de dată și oră preferat
    % CNumărul secolului
    % dZiua lunii (1-31)
    % DLa fel ca % m /% d /% y
    % eLuna (1-12)
    % hLa fel ca % b
    % HCeas (format 24 de ore)
    % ICeas (format 12 ore)
    % jZiua anului (0-365)
    % mLuna (1-12)
    % MMinute
    % nCaracter Newline
    % pEste inclusă denumirea „am” sau „pm”.
    % rOra folosind notația a.m./p.m
    % ROra în format de 24 de ore
    % SSecunde (00-59)
    % tCaracter tabulator
    % TLa fel ca % H:% M:% S
    % uNumărul zilei săptămânii (1 - luni, 7 - duminică)
    % UNumărul săptămânii. Numărătoarea inversă începe din prima duminică a anului
    % VISO 8601: numărul săptămânii 1988. Prima săptămână trebuie să aibă cel puțin patru zile, iar luni este considerată prima zi
    % WNumărul săptămânii. Numărătoarea inversă începe din prima zi de luni a anului
    % vNumărul zilei săptămânii (0 - duminică, 6 - sâmbătă)
    % XFormat preferat de dată fără oră
    % XFormatul de oră preferat fără dată
    % yAnul (două cifre)
    % YAn (patru cifre)
    % ZFus orar (nume sau abreviere)
    %% Simbolul „%”

    Orice altă informație inclusă în șirul de format va fi inserată în șirul returnat.

Să ne uităm la o parte din codul dintr-o pagină web reală și să creăm primul nostru script php, și anume, să afișăm data și ora curentă pe site-ul nostru. Acest scenariu este folosit pe site-uri destul de des și cred că va fi util multora.

Să creăm un alt fișier php și să-i denumim time.php. am studiat mai devreme, dacă ai uitat să repeți.

Așa că am creat fișierul time.php și am plasat acest fișier în folderul myphp creat anterior la. Am studiat acest subiect în lecție.

Deschideți codul pentru fișierul time.php și între etichete și prescriem următorul cod, Listarea 1:

Listarea 1.

Astăzi:

Ora curentă

Pornim serverul local, introducem adresa în bara de adrese a browserului http://localhost/myphp/time.phpși apăsați Enter. Și vedem această imagine:

Vă atrag atenția asupra faptului că în acest caz este afișată ora curentă a serverului, acestea. dacă, de exemplu, serverul pe care „locuiește” site-ul tău se află într-o altă țară și ora actuală diferă de ora Moscovei, atunci valoarea oră afișată va diferi și de ora Moscovei.

Să aruncăm o privire la cod Listare 1. Etichete text simplu " Astăzi" și " Ora curentă„nu sunt procesate de preprocesorul PHP și sunt afișate ca” este. „În locul acestor intrări, puteți scrie orice text, de exemplu, doar Data sau Timp etc.

Și aici este codul php inclus în descriptoriPHP este procesat înainte de a fi transmis browserului.

După cum probabil v-ați dat seama deja de funcția de dată în PHP responsabil pentru afișarea datei și orei... Valorile de afișare a datei și orei sunt date în paranteze. Există o mulțime de astfel de valori în PHP și vom dedica următoarea lecție separată acestei analize și studiului tuturor valorilor posibile.

Declarație Echo - se traduce prin retrage, în acest caz este menit să fie afișat pe ecranul monitorului Datași Timpul serverului.

Același rezultat (afișare în browser) poate fi obținut prin plasarea întregului script în interiorul descriptorilor PHP. Uite Lista 2:

Lista 2.

ecou „Astăzi:”;
data ecou ("j F Y");
ecou „Ora curentă”;
data ecou ("H: i: s");
?>

Toate elementele de text destinate ieșirii trebuie să fie cuprinse între ghilimele. Șirurile de text pot fi incluse atât între ghilimele simple cât și duble, diferența va fi discutată mai târziu. Intrări:

ecou „Astăzi”;

ecou „Astăzi”;

sunt complet echivalente și par la fel.

Caracterul spațiu înainte de ghilimele de închidere este folosit pentru a separa rezultatul funcției de dată de textul din jur. Toate comenzile din PHP sunt întotdeauna separate prin punct și virgulă.

Pentru a afișa Data și Ora pe site, introduceți codul Listarea 1 sau Lista 2 la locul potrivit pe pagina dvs. web. Pentru a oferi inscripțiilor (Data și Ora) un stil general de design al site-ului, puteți utiliza.

P.S. Permiteți-mi să vă reamintesc că fișierul în care plasați inserții PHP trebuie să aibă extensia .php și, în plus, găzduirea pe care „locuiește” site-ul dvs. trebuie să suporte PHP (azi, asta este aproape tot

Top articole similare