Funcția PHP Data() & Time: Cum să obțineți marcajul temporal actual?

Funcția PHP date().

Funcția de dată PHP este o funcție încorporată care simplifică lucrul cu tipurile de date de date. Funcția PHP data este folosită pentru a formata o dată sau o oră într-un format care poate fi citit de om. Poate fi folosit pentru a afișa data publicării articolului. înregistrați ultimele date actualizate într-o bază de date.

Sintaxă și exemplu de date PHP

PHP Data următoarea sintaxă de bază

<?php
date(format,[timestamp]);
?>

AICI,

  • „date(…)” este funcția care returnează marcajul de timp curent în PHP pe server.
  • „format” este formatul general pe care vrem să fie rezultatul nostru, adică;
    • „Ymd” pentru formatul de dată PHP AAAA-LL-ZZ
    • „Y” pentru a afișa anul curent
    • „[timestamp]” este opțional. Dacă nu a fost furnizat niciun marcaj de timp, PHP va primi data curentă PHP pe server.

Să ne uităm la un exemplu de bază care afișează anul curent.

<?php

echo date("Y");

?>

ieșire:

2018

Ce este un marcaj de timp?

Un marcaj temporal în PHP este o valoare numerică în secunde între ora curentă și valoarea la 1st Ianuarie 1970 00:00:00 Greenwich Mean Time (GMT).

Valoarea returnată de funcția de timp depinde de fusul orar implicit.

Fusul orar implicit este setat în fișierul php.ini.

De asemenea, poate fi setat programatic folosind funcția date_default_timezone_set.

Codul de mai jos afișează marca temporală curentă

<?php

echo time();

?>

Presupunând că ați salvat fișierul timestamp.php în folderul phptuts, navigați la adresa URL http://localhost/phptuts/timestamp.php

TimeStamp

Notă: valoarea ștampilei de timp PHP nu este o constantă. Se schimbă în fiecare secundă.

Obținerea unei liste cu identificatorii de fus orar disponibili

Înainte de a ne uita la modul de setare programatică a fusului orar implicit, să vedem cum să obținem o listă de fusuri orare acceptate.

<?php

$timezone_identifiers = DateTimeZone::listIdentifiers();

foreach($timezone_identifiers as $key => $list){

echo $list . "<br/>";

}
?>

AICI,

  • „$timezone_identifiers = DateTimeZone::listIdentifiers();” apelează metoda statică listIdentifiers a DateandTime Zone construită în clasă. Metoda listIdentifiers returnează o listă de constante care sunt alocate variabilei $timezone_identifiers.
  • „foreach{…}” iterează prin matricea numerică și tipărește valorile.

Presupunând că ați salvat fișierul list_time_zones.php în folderul phptuts, navigați la adresa URL http://localhost/phptuts/list_time_zones.php

Identificatori de fus orar

PHP a setat fusul orar prin program

Funcția date_default_timezone_set vă permite să setați fusul orar implicit dintr-un script PHP.

Fusul orar setat va fi apoi utilizat până la toate datele în Scripturi de funcții PHP. Are următoarea sintaxă.

<?php
date_default_timezone_set (string $timezone_identifier);
?>

AICI,

  • „date_default_timezone_set()” este funcția care setează fusul orar implicit
  • „string $timezone_identifier” este identificatorul fusului orar

Scriptul de mai jos afișează ora conform fusului orar implicit setat în php.ini.

Apoi schimbă fusul orar implicit în Asia/Calcutta și afișează din nou 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");
?>

Presupunând că ați salvat fișierul set_time_zone.php în folderul phptuts, navigați la adresa URL http://localhost/phptuts/set_time_zone.php

PHP a setat fusul orar prin program

Funcția PHP Mktime

Funcția mktime returnează marcajul de timp în a Unix format.

Are următoarea sintaxă.

<?php
mktime(hour, minute, second, month, day, year, is_dst);
?>

AICI,

  • „mktime(…)” este funcția make PHP timestamp
  • „ora” este opțional, este numărul de oră
  • „minut” este opțional, este numărul de minute
  • „secunda” este opțională, este numărul de secunde
  • „lună” este opțional, este numărul lunii
  • „ziua” este opțională, este numărul zilei
  • „an” este opțional, este numărul anului
  • „is_dst” este opțional, este folosit pentru a determina ora de economisire a zilei (DST). 1 este pentru DST, 0 dacă nu este și -1 dacă este necunoscut.

Să ne uităm acum la un exemplu care creează un marcaj de timp pentru data 13/10/2025 folosind funcția mktime.

<?php

echo mktime(0,0,0,10,13,2025);

?>

AICI,

  • „0,0,0” este ora, minutul și, respectiv, secundele.
  • „13” este ziua lunii
  • „10” este luna anului
  • „2025” este anul

ieșire:

1760328000

Referința funcției PHP Data

Tabelul de mai jos prezintă parametrii comuni utilizați atunci când lucrați cu funcțiile de dată PHP.

Parametrii de timp PHP

Parametru Description Exemplu
„R” Returnează data și ora completă
<?php
echo date("r");
?>
„a”, „A” Returnează dacă ora curentă este am sau pm, AM sau, respectiv, PM
<?php
echo date("a");
echo date("A");
?>
„g”, „G” Returnează ora fără zerouri inițiale [1 la 12], respectiv [0 la 23].
<?php
echo date("g"); 
echo date("G");
?>
„h”, „H” Returnează ora cu zerouri inițiale [01 la 12], respectiv [00 la 23].
<?php
echo date("h"); 
echo date("H");
?>
"este" Returnează minutele/secundele cu zerouri inițiale [00 la 59]
<?php
echo date("i"); 
echo date("s");
?>

Parametrii zilei

Parametru Description Exemplu
„D” Returnează ziua lunii cu zerouri la început [de la 01 la 31]
<?php
echo date("d");
?>
„j” Returnează ziua lunii fără zerouri inițiale [1 la 31]
<?php
echo date("j");
?>
„D” Returnează primele 3 litere ale numelui zilei [Sub to Sat]
<?php
echo date("D");
?>
„L” Returnează numele zilei săptămânii [de duminică până sâmbătă]
<?php
echo date("l");
?>
"w" Returnează ziua săptămânii fără zerouri inițiale [0 la 6] Duminica este reprezentată de zero (0) până la sâmbătă reprezentată de șase (6)
<?php
echo date("w");
?>
„Z” Returnează ziua anului fără spații de început [de la 0 la 365]
<?php
echo date("z");
?>

Parametrii lunii

Parametru Description Exemplu
„M“ Returnează numărul lunii cu zerouri la început [de la 01 la 12]
<?php
echo date("m");
?>
„N” Returnează numărul lunii fără zerouri inițiale [de la 01 la 12]
<?php
echo date("n");
?>
„M” Returnează primele 3 litere ale numelui lunii [Ian to Dec]
<?php
echo date("M");
?>
„F” Returnează numele lunii [ianuarie până în decembrie]
<?php
echo date("F");
?>
„T” Returnează numărul de zile dintr-o lună [28 - 31]
<?php
echo date("t");
?>

Parametrii anului

Parametru Description Exemplu
„L” Returnează 1 dacă este un an bisect și 0 dacă nu este un an bisect
<?php
echo date("L");
?>
„Y” Returnează formatul de an cu patru cifre
<?php
echo date("Y");
?>
„Y” Returnează formatul anului cu două (2) cifre (de la 00 la 99)
<?php
echo date("y");
?>

Rezumat

  • Funcția de dată în PHP este folosită pentru a formata marca temporală într-un format dorit de om.
  • Marca temporală este numărul de secunde dintre ora curentă și 1st ianuarie 1970 00:00:00 GMT. Este cunoscut și sub numele de marcaj temporal UNIX.
  • Toate funcțiile PHP date() folosesc fusul orar implicit setat în fișierul php.ini
  • Fusul orar implicit poate fi, de asemenea, setat programatic folosind scripturi PHP.