PHP-ում cookie-ի կյանքի տևողությունը
Դուք արդեն գիտեք, որ cookie-ները պետք է գրվեն
setcookie ֆունկցիայի միջոցով.
<?php
setcookie('test', 'abcde');
?>
Սակայն այդպիսի cookie-ները երկար չեն ապրում՝ միայն
մինչև բրաուզերի փակումը: Cookie-ի կյանքի տևողությունը
երկարացնելու համար կարող եք օգտագործել երրորդ պարամետրը,
որը ընդունում է ժամանակի պահը timestamp ֆորմատով:
Հենց որ այդ պահը գա՝ cookie-ն ավտոմատ կերպով կջնջվի
բրաուզերի կողմից:
Սակայն cookie-ի մահվան կոնկրետ պահը սահմանելը շատ հարմար չէ: Ավելի հարմար կլիներ սահմանել cookie, օրինակ, ընթացիկ պահից մեկ ժամով, կամ մեկ օրով, կամ մեկ տարով:
Այդ իսկ պատճառով երրորդ պարամետրը սովորաբար գրվում է
այսպես. ընթացիկ ժամանակը + N վայրկյան:
Ընթացիկ ժամանակը ֆորմատով կարող եք
ստանալ time ֆունկցիայի միջոցով:
Օրինակի համար եկեք սահմանենք cookie մեկ ժամով:
Քանի որ մեկ ժամում կա 3600 վայրկյան, ապա
եկեք գումարենք այդ թիվը ընթացիկ պահին.
<?php
setcookie('test', 'abcde', time() + 3600);
?>
Cookie-ներ սահմանելիս սովորաբար վայրկյանները
գրվում են այսպես. - սա մեկ ժամ է, 60 * 60 - սա մեկ օր է: Եվ այդպես շարունակ:
Սա արվում է այն պատճառով, որ ձեր կոդը կարդացողի
համար ակնհայտ լինի, թե որ ժամանակային միջակայքի
համար է սահմանված cookie-ն:
60
* 60 * 24
Օրինակի համար եկեք սահմանենք cookie մեկ օրով.
<?php
setcookie('test', 'abcde', time() + 60 * 60 * 24);
?>
Սահմանեք ինչ-որ cookie մեկ ամսով:
Սահմանեք ինչ-որ cookie մեկ տարով:
Սահմանեք ինչ-որ cookie 10 տարով: