ระยะเวลาการมีชีวิตของคุกกี้ใน PHP

คุณทราบแล้วว่าต้องเขียนคุกกี้ด้วย ฟังก์ชัน setcookie:

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

อย่างไรก็ตาม คุกกี้แบบนี้มีอายุไม่นาน - เพียงแค่ จนกว่าจะปิดเบราว์เซอร์เท่านั้น การยืดอายุของคุกกี้ ทำได้โดยใช้พารามิเตอร์ตัวที่สาม ซึ่งรับช่วงเวลาในรูปแบบ timestamp ทันทีที่ถึงเวลานั้น - คุกกี้จะถูกลบออกโดยอัตโนมัติ โดยเบราว์เซอร์

แต่การตั้งค่าเวลาเฉพาะเจาะจงที่คุกกี้จะหมดอายุ ไม่ค่อยสะดวกนัก มันจะสะดวกกว่าถ้าตั้งค่า คุกกี้ เช่น ให้มีอายุหนึ่งชั่วโมงจากเวลาปัจจุบัน หรือหนึ่งวัน หรือหนึ่งปี

ดังนั้น จึงมักเขียนพารามิเตอร์ตัวที่สาม แบบนี้: เวลาปัจจุบัน + N วินาที เวลาปัจจุบันในรูปแบบ timestamp สามารถ ได้รับได้โดยใช้ฟังก์ชัน time

ลองตั้งค่าคุกกี้เป็นเวลาหนึ่งชั่วโมงเป็นตัวอย่าง เนื่องจากในหนึ่งชั่วโมงมี 3600 วินาที ดังนั้น ให้บวกตัวเลขนี้กับเวลาปัจจุบัน:

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

เมื่อตั้งค่าคุกกี้ มักจะระบุวินาที ในรูปแบบนี้: 60 * 60 - นี่คือหนึ่งชั่วโมง, 60 * 60 * 24 - นี่คือหนึ่งวัน เป็นต้น ทำเช่นนี้เพื่อให้ผู้อ่านโค้ดของคุณ เห็นชัดเจนว่าคุกกี้ถูกตั้งค่าไว้เป็นเวลานานเท่าใด

ลองตั้งค่าคุกกี้เป็นเวลาหนึ่งวันเป็นตัวอย่าง:

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

ตั้งค่าคุกกี้บางอย่างให้มีอายุหนึ่งเดือน

Задание 2

ตั้งค่าคุกกี้บางอย่างให้มีอายุหนึ่งปี

Задание 3

ตั้งค่าคุกกี้บางอย่างให้มีอายุ 10 ปี