PHP-funktionen strtotime()
Eksempel
Konverter engelsk tekst dato- og tidsbeskrivelse til Unix-tidsstempel:
<?php echo(strtotime("now") . "<br>"); echo(strtotime("15 October 1980") . "<br>"); echo(strtotime("+5 hours") . "<br>"); echo(strtotime("+1 week") . "<br>"); echo(strtotime("+1 week 3 days 7 hours 5 seconds") . "<br>"); echo(strtotime("next Monday") . "<br>"); echo(strtotime("last Sunday")); ?>
Definition og brug
Funktionen strtotime() fortolker enhver engelsk tekst, der beskriver dato eller tid, til en Unix-tidsstempel (sekunder siden 1. januar 1970 00:00:00 GMT).
Bemærk:Hvis året angives med to cifre, vil værdierne 0-69 kortslutte til 2000-2069, og værdierne 70-100 kortslutte til 1970-2000.
Bemærk:Bemærk venligst datoformatet m/d/y eller d-m-y. Hvis separatoren er en skråstreg (/), skal du bruge det amerikanske format m/d/y. Hvis separatoren er en lignedeling (-) eller punktum (.), skal du bruge det europæiske format d-m-y. For at undgå potentielle fejl bør du så vidt muligt bruge formatet YYYY-MM-DD eller bruge funktionen date_create_from_format().
Syntaks
strtotime(time,nu);
Parametre | Beskrivelse |
---|---|
time | Obligatorisk. Angiver dato/tidsstreng. |
nu | Valgfri. Angiver den tidsstempel, der bruges til at beregne returværdien. Hvis parameteren udelades, bruges den aktuelle tid. |
Tekniske detaljer
Returværdi: | Returnerer tidsstempel, hvis det lykkes, returnerer FALSE, hvis det fejler. |
---|---|
PHP version: | 4+ |
Opdateringslog
5.3.0: | Nu defineres relative tidsformater som denne uge, sidste uge, forrige uge, næste uge, med ugen som starter på mandag til søndag, ikke bruger de 7 dage før eller efter den aktuelle dato/tid. |
5.3.0 | Før PHP 5.3.0 var 24:00 ikke et gyldigt format, og strtotime() returnerede FALSE. |
5.2.7 | I tidligere versioner tilføjede man en uge til tidsstempeln, hvis man anmodede om en bestemt dato i en måned, og denne dato var den første dag i måneden, dette er nu rettet. |
5.1.0 | Returnerer FALSE, hvis det fejler (i tidligere versioner returnerer det -1), og tilføjer E_STRICT og E_NOTICE tidszoner fejl. |
5.0.2 | Nu beregnes "nu" og andre relative tider baseret på den aktuelle tid, ikke på midnatstiden i dag. |
5.0.0 | Tillader mikrosekunder (men mikrosekundtal ignoreres normalt). |
4.4.0 | Før PHP 4.4 beregnet "next" forkert til +2. Den normale løsning er at bruge "+1". |