Cookie levensduur in PHP
Je weet al dat cookies moeten worden geschreven met
de functie setcookie:
<?php
setcookie('test', 'abcde');
?>
Echter, dergelijke cookies leven niet lang - alleen
tot de browser wordt gesloten. De levensduur van een cookie
kan worden verlengd met behulp van de derde parameter,
die een tijdstip accepteert in het formaat
timestamp. Zodra dit moment
aangebroken is - zal de cookie automatisch worden verwijderd
door de browser.
Het is echter niet erg handig om een specifiek moment van vervallen van de cookie in te stellen. Het zou handiger zijn om de cookie bijvoorbeeld in te stellen voor een uur vanaf het huidige moment, of voor een dag, of voor een jaar.
Daarom wordt de derde parameter meestal als volgt
geschreven: huidig tijdstip + N seconden.
Het huidige tijdstip in timestamp formaat kan
worden verkregen met de functie time.
Laten we als voorbeeld een cookie instellen voor één
uur. Omdat er 3600 seconden in een uur zitten,
tellen we dit getal op bij het huidige moment:
<?php
setcookie('test', 'abcde', time() + 3600);
?>
Bij het instellen van cookies worden seconden meestal
als volgt geschreven: - dit is een uur, 60 * 60 - dit is een dag. En zo verder.
Dit wordt gedaan zodat het voor degene die je
code leest duidelijk is voor welke tijdsperiode
de cookie is ingesteld.
60
* 60 * 24
Laten we als voorbeeld een cookie instellen voor een dag:
<?php
setcookie('test', 'abcde', time() + 60 * 60 * 24);
?>
Stel een willekeurige cookie in voor een maand.
Stel een willekeurige cookie in voor een jaar.
Stel een willekeurige cookie in voor 10 jaar.