PHP Date() & Time Funktion: Hvordan får man det aktuelle tidsstempel?
PHP date() Funktion
PHP-datofunktion er en indbygget funktion, der forenkler arbejdet med datodatatyper. PHP-datofunktionen bruges til at formatere en dato eller tid til et menneskeligt læsbart format. Den kan bruges til at vise datoen for artiklens publicering. registrere de sidst opdaterede data i en database.
PHP Dato Syntaks & Eksempel
PHP Dater følgende grundlæggende syntaks
<?php date(format,[timestamp]); ?>
HER,
- "dato(...)" er den funktion, der returnerer det aktuelle tidsstempel i PHP på serveren.
- "format" er det generelle format, som vi ønsker, at vores output skal være, dvs.
- "Ymd" for PHP-datoformat ÅÅÅÅ-MM-DD
- "Y" for at vise det aktuelle år
- "[tidsstempel]" er valgfrit. Hvis der ikke er angivet et tidsstempel, vil PHP få den aktuelle PHP-dato på serveren.
Lad os se på et grundlæggende eksempel, der viser det aktuelle år.
<?php echo date("Y"); ?>
Output:
2018
Hvad er et tidsstempel?
Et tidsstempel i PHP er en numerisk værdi i sekunder mellem det aktuelle tidspunkt og værdien ved 1st Januar 1970 00:00:00 Greenwich Mean Time (GMT).
Den værdi, der returneres af tidsfunktionen, afhænger af standardtidszonen.
Standardtidszonen er indstillet i filen php.ini.
Det kan også indstilles programmatisk ved hjælp af date_default_timezone_set-funktionen.
Koden nedenfor viser det aktuelle tidsstempel
<?php echo time(); ?>
Hvis du antager, at du har gemt filen timestamp.php i mappen phptuts, skal du gå til URL'en http://localhost/phptuts/timestamp.php
Bemærk: Værdien af tidsstemplet PHP er ikke en konstant. Det ændrer sig hvert sekund.
Henter en liste over tilgængelige tidszone-id'er
Før vi ser på, hvordan man indstiller standardtidszonen programmatisk, lad os se på, hvordan man får en liste over understøttede tidszoner.
<?php $timezone_identifiers = DateTimeZone::listIdentifiers(); foreach($timezone_identifiers as $key => $list){ echo $list . "<br/>"; } ?>
HER,
- "$timezone_identifiers = DateTimeZone::listIdentifiers();" kalder listIdentifiers statiske metode for DateandTime Zone indbygget i klassen. ListIdentifiers metoden returnerer en liste over konstanter, der er tildelt variablen $timezone_identifiers.
- "foreach{...}" itererer gennem det numeriske array og udskriver værdierne.
Hvis du antager, at du har gemt filen list_time_zones.php i mappen phptuts, skal du gå til URL'en http://localhost/phptuts/list_time_zones.php
PHP indstiller tidszone Programmatisk
Date_default_timezone_set-funktionen giver dig mulighed for at indstille standardtidszonen fra et PHP-script.
Den indstillede tidszone vil derefter blive brugt af alle dato i PHP funktion scripts. Den har følgende syntaks.
<?php date_default_timezone_set (string $timezone_identifier); ?>
HER,
- "date_default_timezone_set()" er den funktion, der indstiller standardtidszonen
- "streng $timezone_identifier" er tidszone-id'en
Scriptet nedenfor viser klokkeslættet i henhold til standardtidszonen indstillet i php.ini.
Den ændrer derefter standardtidszonen til Asien/Calcutta og viser tiden igen.
<?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"); ?>
Hvis du antager, at du har gemt filen set_time_zone.php i mappen phptuts, skal du gå til URL'en http://localhost/phptuts/set_time_zone.php
PHP Mktime funktion
Funktionen mktime returnerer tidsstemplet i en Unix format.
Den har følgende syntaks.
<?php mktime(hour, minute, second, month, day, year, is_dst); ?>
HER,
- "mktime(...)" er funktionen til at lave PHP-tidsstempel
- "time" er valgfrit, det er antallet af timer
- "minut" er valgfrit, det er antallet af minutter
- "sekund" er valgfrit, det er antallet af sekunder
- "måned" er valgfrit, det er månedens nummer
- "dag" er valgfrit, det er dagens nummer
- "år" er valgfrit, det er årets nummer
- "is_dst" er valgfri, den bruges til at bestemme dagssparetiden (DST). 1 er for sommertid, 0 hvis det ikke er det og -1 hvis det er ukendt.
Lad os nu se på et eksempel, der opretter et tidsstempel for datoen 13/10/2025 ved hjælp af mktime-funktionen.
<?php echo mktime(0,0,0,10,13,2025); ?>
HER,
- "0,0,0" er henholdsvis time, minut og sekunder.
- "13" er dagen i måneden
- "10" er årets måned
- "2025" er året
Output:
1760328000
PHP Dato funktion reference
Tabellen nedenfor viser de almindelige parametre, der bruges, når du arbejder med PHP-datofunktionerne.
PHP Tidsparametre
Parameter | Description | Eksempel |
---|---|---|
"R" | Returnerer den fulde dato og klokkeslæt |
<?php echo date("r"); ?> |
"a", "A" | Returnerer, om det aktuelle klokkeslæt er henholdsvis am eller pm, AM eller PM |
<?php echo date("a"); echo date("A"); ?> |
"g", "G" | Returnerer timen uden indledende nuller henholdsvis [1 til 12], [0 til 23] |
<?php echo date("g"); echo date("G"); ?> |
"h", "H" | Returnerer timen med indledende nuller henholdsvis [01 til 12],[00 til 23] |
<?php echo date("h"); echo date("H"); ?> |
"er" | Returnerer minutter/sekunder med indledende nuller [00 til 59] |
<?php echo date("i"); echo date("s"); ?> |
Dagsparametre
Parameter | Description | Eksempel |
---|---|---|
“D” | Returnerer dagen i måneden med foranstillede nuller [01 til 31] |
<?php echo date("d"); ?> |
"j" | Returnerer dagen i måneden uden indledende nuller [1 til 31] |
<?php echo date("j"); ?> |
”D” | Returnerer de første 3 bogstaver i dagens navn [Sub to Sat] |
<?php echo date("D"); ?> |
"L" | Returnerer ugens navn [søndag til lørdag] |
<?php echo date("l"); ?> |
"I" | Returnerer ugedag uden indledende nuller [0 til 6] Søndag repræsenteres af nul (0) til lørdag repræsenteret med seks (6) |
<?php echo date("w"); ?> |
"z" | Returnerer dagen i året uden indledende mellemrum [0 til 365] |
<?php echo date("z"); ?> |
Måneds parametre
Parameter | Description | Eksempel |
---|---|---|
”M” | Returnerer månedsnummeret med foranstillede nuller [01 til 12] |
<?php echo date("m"); ?> |
“N” | Returnerer månedsnummeret uden indledende nuller [01 til 12] |
<?php echo date("n"); ?> |
"M" | Returnerer de første 3 bogstaver i månedens navn [Jan til Dec] |
<?php echo date("M"); ?> |
"F" | Returnerer månedens navn [januar til december] |
<?php echo date("F"); ?> |
“T” | Returnerer antallet af dage i en måned [28 til 31] |
<?php echo date("t"); ?> |
Års parametre
Parameter | Description | Eksempel |
---|---|---|
"L" | Returnerer 1 hvis det er et skudår og 0 hvis det ikke er et skudår |
<?php echo date("L"); ?> |
"Y" | Returnerer firecifret årstal |
<?php echo date("Y"); ?> |
"Y" | Returnerer to (2) cifre års format (00 til 99) |
<?php echo date("y"); ?> |
Resumé
- Datofunktionen i PHP bruges til at formatere tidsstemplet til et menneskeligt ønsket format.
- Tidsstemplet er antallet af sekunder mellem det aktuelle tidspunkt og 1st januar 1970 00:00:00 GMT. Det er også kendt som UNIX-tidsstemplet.
- Alle PHP date()-funktioner bruger standardtidszonen indstillet i php.ini-filen
- Standardtidszonen kan også indstilles programmatisk ved hjælp af PHP-scripts.