PHP Datum() & Tijdfunctie: Hoe krijg ik de huidige tijdstempel?

โšก Slimme samenvatting

De PHP-functie `date()` formatteert tijdstempels naar leesbare datums en tijden. Deze handleiding legt de datumsyntaxis uit, de Unix-tijdstempel, hoe je tijdzones kunt weergeven en instellen, de `mktime`-functie voor het maken van tijdstempels en een volledig overzicht van de tekens voor de tijd, dag, maand en jaar.

  • ๐Ÿ“… Wat doet date()? De datumfunctie zet een tijdstempel om in een opgemaakte tekenreeks met behulp van tekens zoals Y, m en d voor jaar, maand en dag.
  • โ€‹ Unix-tijdstempel: Een tijdstempel is het aantal seconden sinds 1 januari 1970 GMT, en time() geeft de huidige waarde terug.
  • ๐ŸŒ Tijdzones: date_default_timezone_set wijzigt de actieve tijdzone en DateTimeZone::listIdentifiers geeft een lijst van alle ondersteunde zones.
  • ๐Ÿ”ง mktime: De functie mktime construeert een tijdstempel op basis van een specifiek uur, minuut, seconde, maand, dag en jaar.
  • ๐Ÿ”ค Opmaaktekens: De uitvoer wordt bepaald door afzonderlijke letters, bijvoorbeeld H voor de 24-uurs tijdsaanduiding, l voor de naam van de dag van de week en F voor de naam van de maand.
  • ๐Ÿ“ Referentietabellen: In de gegroepeerde tabellen worden de opmaaktekens voor tijd, dag, maand en jaar weergegeven, met voor elk een werkend voorbeeld.
  • ๐Ÿค– AI-assistentie: AI-tools kunnen datumnotaties en verschilcodes genereren en helpen bij het oplossen van verwarrende tijdzoneproblemen.

PHP date() Functie

PHP date() Functie

De PHP-functie `date` is een ingebouwde functie die het werken met datumgegevens vereenvoudigt. De PHP-functie `date` wordt gebruikt om een โ€‹โ€‹datum of tijd in een leesbaar formaat weer te geven. Het kan bijvoorbeeld worden gebruikt om de publicatiedatum van een artikel weer te geven of om vast te leggen wanneer gegevens in een database voor het laatst zijn bijgewerkt.

PHP-datumsyntaxis en voorbeeld

De PHP-functie date() heeft de volgende basissyntaxis.

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

HIER,

  • โ€œdate(โ€ฆ)โ€ is de functie die de huidige tijdstempel retourneert, geformatteerd in PHP op de server.
  • "Formaat" is het algemene formaat dat we voor onze uitvoer willen, bijvoorbeeld:
    • โ€œYmdโ€ staat voor het PHP-datumformaat YYYY-MM-DD.
    • โ€œYโ€ om het huidige jaar weer te geven
  • โ€œ[timestamp]โ€ is optioneel. Als er geen tijdstempel is opgegeven, gebruikt PHP de huidige datum en tijd op de server.

Laten we eens kijken naar een eenvoudig voorbeeld dat het huidige jaar weergeeft.

<?php

echo date("Y");

?>

Output:

2026

Wat is een tijdstempel?

Een timestamp in PHP is een numerieke waarde in seconden tussen de huidige tijd en de waarde op dat tijdstip.st Januari 1970 00:00:00 Greenwich Mean Time (GMT).

De waarde die door de tijdfunctie wordt geretourneerd, is afhankelijk van de standaardtijdzone.

De standaard tijdzone wordt ingesteld in het php.ini-bestand. Deze kan ook programmatisch worden ingesteld met behulp van de functie date_default_timezone_set.

De onderstaande code geeft de huidige tijdstempel weer.

<?php

echo time();

?>

Als je het bestand timestamp.php in de map phptuts hebt opgeslagen, ga dan naar de betreffende map. URL http://localhost/phptuts/timestamp.php

TimeStamp

Let op: de waarde van de tijdstempel is niet constant. Deze verandert elke seconde.

Een lijst met beschikbare tijdzone-ID's ophalen

Voordat we bekijken hoe je programmatisch de standaard tijdzone instelt, laten we eerst eens kijken hoe je een lijst met ondersteunde tijdzones kunt opvragen.

<?php

$timezone_identifiers = DateTimeZone::listIdentifiers();

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

echo $list . "<br/>";

}
?>

HIER,

  • โ€œ$timezone_identifiers = DateTimeZone::listIdentifiers();โ€ roept de statische methode listIdentifiers van de ingebouwde klasse DateTimeZone aan. De methode listIdentifiers retourneert een lijst met identifiers die zijn toegewezen aan de variabele $timezone_identifiers.
  • โ€œforeach{โ€ฆ}โ€ doorloopt de array en print de waarden.

Als je het bestand list_time_zones.php in de map phptuts hebt opgeslagen, ga dan naar de betreffende map. URL http://localhost/phptuts/list_time_zones.php

Tijdzone-ID's

PHP heeft de tijdzone programmatisch ingesteld

Met de functie date_default_timezone_set kunt u de standaardtijdzone instellen via een PHP-script.

De ingestelde tijdzone wordt vervolgens gebruikt voor alle datums. PHP-functies in je scripts. Het heeft de volgende syntaxis.

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

HIER,

  • โ€œdate_default_timezone_set()โ€ is de functie die de standaardtijdzone instelt
  • โ€œstring $timezone_identifierโ€ is de tijdzone-ID

Het onderstaande script toont de tijd volgens de standaard tijdzone die is ingesteld in php.ini. Vervolgens wijzigt het de standaard tijdzone naar Asia/Calcutta en toont de tijd opnieuw.

<?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");
?>

Als je het bestand set_time_zone.php in de map phptuts hebt opgeslagen, ga dan naar de betreffende map. URL http://localhost/phptuts/set_time_zone.php

PHP heeft de tijdzone programmatisch ingesteld

PHP Mktime-functie

De functie mktime retourneert de tijdstempel in a Unix formaat.

De syntaxis is als volgt.

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

HIER,

  • โ€œmktime(โ€ฆ)โ€ is de make PHP-tijdstempelfunctie
  • โ€œUurโ€ is optioneel; het is het uurnummer.
  • โ€œMinuutโ€ is optioneel; het is het aantal minuten.
  • โ€œSecondeโ€ is optioneel; het is het aantal seconden.
  • โ€œMaandโ€ is optioneel; het is het maandnummer.
  • โ€œdagโ€ is optioneel; het is het dagnummer.
  • โ€œjaarโ€ is optioneel; het is het jaartal.
  • โ€œis_dstโ€ is optioneel; het wordt gebruikt om de zomertijd (DST) te bepalen. 1 staat voor zomertijd, 0 als deze niet van toepassing is en -1 als deze onbekend is.

Laten we nu eens kijken naar een voorbeeld waarin een tijdstempel voor de datum 13-10-2025 wordt aangemaakt met behulp van de functie mktime.

<?php

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

?>

HIER,

  • โ€œ0,0,0โ€ staat voor het uur, de minuut en de seconde.
  • โ€œ10โ€ is de maand van het jaar
  • โ€œ13โ€ is de dag van de maand
  • โ€œ2025โ€ is het jaar

Output:

1760328000

PHP-datumformaatreferentie

De onderstaande tabellen tonen de meest gebruikte opmaaktekens bij het werken met PHP-datumfuncties.

Tijdparameters

Parameter Beschrijving Voorbeeld
"R" Retourneert de volledige datum en tijd
<?php
echo date("r");
?>
โ€œeenโ€, โ€œAโ€ Geeft terug of de huidige tijd respectievelijk am of pm, AM of PM is
<?php
echo date("a");
echo date("A");
?>
โ€œgโ€, โ€œGโ€ Retourneert het uur zonder voorafgaande nullen [1 tot 12], respectievelijk [0 tot 23].
<?php
echo date("g");
echo date("G");
?>
โ€œhโ€, โ€œHโ€ Geeft het uur weer met voorloopnullen [01 tot 12], [00 tot 23] respectievelijk
<?php
echo date("h");
echo date("H");
?>
"is" Retourneert de minuten/seconden met voorloopnullen [00 tot 59]
<?php
echo date("i");
echo date("s");
?>

Dagparameters

Parameter Beschrijving Voorbeeld
"D" Retourneert de dag van de maand met voorloopnullen [01 tot 31]
<?php
echo date("d");
?>
"J" Retourneert de dag van de maand zonder voorloopnullen [1 t/m 31]
<?php
echo date("j");
?>
โ€œDโ€ Geeft de eerste 3 letters van de dagnaam terug [zo t/m za]
<?php
echo date("D");
?>
"L" Geeft de naam van de dag van de week terug [zondag tot en met zaterdag].
<?php
echo date("l");
?>
"w" Geeft de dag van de week weer zonder voorloopnullen [0 tot 6]; zondag wordt weergegeven door nul (0) tot en met zaterdag door zes (6).
<?php
echo date("w");
?>
"Z" Retourneert de dag van het jaar zonder voorafgaande spaties [0 tot en met 365]
<?php
echo date("z");
?>

Maandparameters

Parameter Beschrijving Voorbeeld
โ€œMโ€ Retourneert het maandnummer met voorloopnullen [01 tot 12]
<?php
echo date("m");
?>
"N" Retourneert het maandnummer zonder voorafgaande nullen [1 tot 12]
<?php
echo date("n");
?>
โ€œMโ€ Retourneert de eerste drie letters van de maandnaam [Jan tot Dec]
<?php
echo date("M");
?>
โ€œFโ€ Retourneert de naam van de maand [januari tot december]
<?php
echo date("F");
?>
"T" Retourneert het aantal dagen in een maand [28 tot 31]
<?php
echo date("t");
?>

Jaarparameters

Parameter Beschrijving Voorbeeld
โ€œLโ€ Geeft 1 terug als het een schrikjaar is en 0 als het geen schrikjaar is.
<?php
echo date("L");
?>
โ€œYโ€ Geeft het jaartal in viercijferige notatie terug.
<?php
echo date("Y");
?>
"Y" Geeft het jaartal in tweecijferige notatie terug (00 tot 99).
<?php
echo date("y");
?>

Veelgestelde vragen

`date()` is een eenvoudige procedurele functie die een tijdstempel formatteert. De `DateTime`-klasse is objectgeoriรซnteerd en ondersteunt rekenkundige bewerkingen, vergelijkingen, tijdzones en onveranderlijkheid, waardoor deze beter geschikt is voor complexe datumlogica in grotere applicaties.

Gebruik strtotime(), waarmee formaten zoals '2025-10-13' of 'next' gelezen kunnen worden. Monday' en retourneert een Unix-tijdstempel. Voor strikte parsing van een bekend formaat is DateTime::createFromFormat veiliger omdat het duidelijk faalt bij ongeldige invoer.

Maak twee DateTime-objecten aan en roep diff() aan, die een DateInterval retourneert. Je kunt vervolgens het aantal dagen, maanden of jaren uitlezen, bijvoorbeeld $start->diff($end)->days om het totale aantal dagen tussen de datums te krijgen.

Ja. Beschrijf het invoer- en uitvoerformaat, en de AI kan code genereren voor date(), DateTime of strtotime, inclusief het toevoegen van intervallen of het converteren van tijdzones. Test het met uitzonderingen zoals schrikjaren en het einde van de maand.

Ja. AI kan een ontbrekende aanroep van date_default_timezone_set, een verschil tussen de tijdzone van de server en het scherm, of problemen met zomer- en wintertijd detecteren en vervolgens aanbevelen om DateTime met expliciete tijdzones te gebruiken om het gedrag voorspelbaar te maken.

Vat dit bericht samen met: