Čas života cookies v PHP
Už viete, že cookies sa zapisujú
pomocou funkcie setcookie:
<?php
setcookie('test', 'abcde');
?>
Avšak takéto cookies nežijú dlho - iba
do zatvorenia prehliadača. Predĺžiť čas života
cookies je možné pomocou tretieho parametra,
ktorý prijíma časový okamih vo formáte
timestamp. Akonáhle tento okamih
nastane - cookies bude automaticky odstránená
prehliadačom.
Avšak nastavovať konkrétny okamih zániku cookies nie je veľmi pohodlné. Bolo by pohodlnejšie nastaviť cookies, napríklad, na hodinu od aktuálneho okamihu, alebo na deň, alebo na rok.
Preto sa tretí parameter zvyčajne zapisuje
takto: súčasný časový okamih + N sekúnd.
Súčasný časový okamih vo formáte timestamp je možné
získať pomocou funkcie time.
Ukážme si pre príklad nastavenie cookies na jednu
hodinu. Keďže v hodine je 3600 sekúnd,
pripočítajme toto číslo k súčasnému okamihu:
<?php
setcookie('test', 'abcde', time() + 3600);
?>
Pri nastavovaní cookies sa obvykle zapisujú sekundy
v takomto tvare: - to je hodina, 60 * 60 - to je jeden deň. A tak ďalej.
Robí sa to preto, aby bolo čitateľovi vášho
kódu jasné, na aký časový interval
je cookies nastavená.
60
* 60 * 24
Ukážme si pre príklad nastavenie cookies na deň:
<?php
setcookie('test', 'abcde', time() + 60 * 60 * 24);
?>
Nastavte nejakú cookies na mesiac.
Nastavte nejakú cookies na rok.
Nastavte nejakú cookies na 10 rokov.