Küpsiste kehtivusaeg PHP-s

Te juba teate, et küpsiseid tuleb kirjutada funktsiooni setcookie abil:

php<?php
  setcookie('test', 'abcde');
?>

Kuid sellised küpsised ei ela kaua - ainult kuni brauseri sulgemiseni. Küpsise kehtivusaega saab pikendada kolmanda parameetri abil, mis võtab vastu ajahetke timestamp formaadis. Niipea kui see ajahetk saabub - kustutab brauser küpsise automaatselt.

Kuid konkreetse küpsise aegumise hetke määramine ei ole väga mugav. Oleks mugavam määrata küpsis näiteks üheks tunniks praegusest hetkest, või üheks päevaks, või üheks aastaks.

Seetõttu kirjutatakse kolmas parameeter tavaliselt nii: praegune ajahetk + N sekundit. Praeguse ajahetke saab timestamp formaadis funktsiooni time abil.

Paneme näiteks kirja küpsise üheks tunniks. Kuna tunnis on 3600 sekundit, siis liidame selle arvu praegusele ajahetkele:

php<?php
  setcookie('test', 'abcde', time() + 3600);
?>

Küpsiste seadistamisel kirjutatakse sekundid tavaliselt sellisel kujul: 60 * 60 - see on tund, 60 * 60 * 24 - see on ööpäev. Ja nii edasi. Seda tehakse selleks, et teie koodi lugejale oleks ilmselge, mis ajaperioodiks küpsis on seatud.

Paneme näiteks kirja küpsise ööpäevaks:

php<?php
  setcookie('test', 'abcde', time() + 60 * 60 * 24);
?>
Задание 1

Seadistage mingi küpsis kuuks.

Задание 2

Seadistage mingi küpsis aastaks.

Задание 3

Seadistage mingi küpsis 10 aastaks.