Zend Framework - การจัดการคุกกี้
คุกกี้เป็นแนวคิดที่สำคัญมากในเว็บแอปพลิเคชัน มีตัวเลือกในการเก็บรักษาข้อมูลของผู้ใช้โดยปกติจะเป็นข้อมูลชิ้นเล็ก ๆ ในเบราว์เซอร์ในช่วงเวลาที่ จำกัด
คุกกี้ใช้เพื่อรักษาสถานะของเว็บแอปพลิเคชัน Zend framework มีโมดูลคุกกี้ภายในไฟล์zend-httpส่วนประกอบ. zend-http นี้ให้นามธรรม HTTP และการนำไปใช้งาน
การติดตั้งคอมโพเนนต์ HTTP
ส่วนประกอบ HTTP สามารถติดตั้งได้อย่างง่ายดายโดยใช้ไฟล์ Composer ตามที่ระบุไว้ในรหัสด้านล่าง
composer require zendframework/zend-http
แนวคิด
zend-http จัดเตรียมไฟล์ Zend\Http\Cookiesคลาสในการจัดการคุกกี้ ใช้ร่วมกับZend\Http\Clientคลาสซึ่งใช้ในการส่งคำขอไปยังเว็บเซิร์ฟเวอร์ คุกกี้สามารถเริ่มต้นได้ตามที่แสดงในโค้ดด้านล่าง -
use Zend\Http\Cookies
$c = new Cookies();
เมื่อไคลเอนต์ HTTP (Zend \ Http \ Client) ส่งคำขอ URI ไปยังเว็บเซิร์ฟเวอร์เป็นครั้งแรกจะไม่มีคุกกี้ใด ๆ เมื่อเว็บเซิร์ฟเวอร์ได้รับคำขอแล้วจะรวมคุกกี้ไว้ในวัตถุตอบสนองเป็นไฟล์HTTP Header, Set-Cookieและส่งไปยังไคลเอนต์ HTTP ไคลเอ็นต์ HTTP จะดึงคุกกี้ออกจากการตอบสนอง http และส่งต่อเป็น HTTP Header เดียวกันในการร้องขอในภายหลัง โดยทั่วไปคุกกี้แต่ละรายการจะถูกจับคู่กับโดเมนและเส้นทางของโดเมน
วิธีการที่มีอยู่ใน Cookies ชั้นเรียนมีดังนี้ -
addCookie(uri) - ใช้เพื่อเพิ่มคุกกี้ลงในออบเจ็กต์คำขอของ URI ที่กำหนด
getCookie(cookieName, $cookieForm) - ใช้เพื่อรับคุกกี้ $ cookieName ที่มีอยู่ใน URI ที่กำหนด $uri. อาร์กิวเมนต์ที่สามคือวิธีที่จะส่งคืนคุกกี้ไม่ว่าจะเป็นสตริงหรืออาร์เรย์
fromResponse(uri) - ใช้เพื่อแยกคุกกี้ออกจากวัตถุตอบสนองของ URI ที่กำหนด
addCookiesFromResponse - เหมือนกับ fromResponse แต่จะแยกและเพิ่มอีกครั้งในออบเจ็กต์คำขอของ URI ที่กำหนด
isEmpty() - ใช้เพื่อค้นหาว่า Cookie วัตถุมีคุกกี้หรือไม่
reset() - ใช้เพื่อล้างคุกกี้ทั้งหมดใน URI ที่กำหนด
ในบทถัดไปเราจะพูดถึงการจัดการเซสชันใน Zend Framework