ระยะเวลาการมีชีวิตของคุกกี้ใน PHP
คุณทราบแล้วว่าต้องเขียนคุกกี้ด้วย
ฟังก์ชัน setcookie:
<?php
setcookie('test', 'abcde');
?>
อย่างไรก็ตาม คุกกี้แบบนี้มีอายุไม่นาน - เพียงแค่
จนกว่าจะปิดเบราว์เซอร์เท่านั้น การยืดอายุของคุกกี้
ทำได้โดยใช้พารามิเตอร์ตัวที่สาม
ซึ่งรับช่วงเวลาในรูปแบบ
timestamp ทันทีที่ถึงเวลานั้น
- คุกกี้จะถูกลบออกโดยอัตโนมัติ
โดยเบราว์เซอร์
แต่การตั้งค่าเวลาเฉพาะเจาะจงที่คุกกี้จะหมดอายุ ไม่ค่อยสะดวกนัก มันจะสะดวกกว่าถ้าตั้งค่า คุกกี้ เช่น ให้มีอายุหนึ่งชั่วโมงจากเวลาปัจจุบัน หรือหนึ่งวัน หรือหนึ่งปี
ดังนั้น จึงมักเขียนพารามิเตอร์ตัวที่สาม
แบบนี้: เวลาปัจจุบัน + N วินาที
เวลาปัจจุบันในรูปแบบ timestamp สามารถ
ได้รับได้โดยใช้ฟังก์ชัน time
ลองตั้งค่าคุกกี้เป็นเวลาหนึ่งชั่วโมงเป็นตัวอย่าง
เนื่องจากในหนึ่งชั่วโมงมี 3600 วินาที ดังนั้น
ให้บวกตัวเลขนี้กับเวลาปัจจุบัน:
<?php
setcookie('test', 'abcde', time() + 3600);
?>
เมื่อตั้งค่าคุกกี้ มักจะระบุวินาที
ในรูปแบบนี้: - นี่คือหนึ่งชั่วโมง, 60 * 60 - นี่คือหนึ่งวัน เป็นต้น
ทำเช่นนี้เพื่อให้ผู้อ่านโค้ดของคุณ
เห็นชัดเจนว่าคุกกี้ถูกตั้งค่าไว้เป็นเวลานานเท่าใด
60
* 60 * 24
ลองตั้งค่าคุกกี้เป็นเวลาหนึ่งวันเป็นตัวอย่าง:
<?php
setcookie('test', 'abcde', time() + 60 * 60 * 24);
?>
ตั้งค่าคุกกี้บางอย่างให้มีอายุหนึ่งเดือน
ตั้งค่าคุกกี้บางอย่างให้มีอายุหนึ่งปี
ตั้งค่าคุกกี้บางอย่างให้มีอายุ 10 ปี