JavaScript Cookies
Cookie JS là phương pháp hiệu quả ghi nhớ sở thích, mua hàng, hoa hồng, thông tin cho trải nghiệm user tốt hơn hoặc thống kê.
PHP Cookies
Cookie là file text lưu trên máy client để tracking. PHP hỗ trợ minh bạch HTTP cookie.
Cách hoạt động JS Cookie
Server gửi data → browser (dạng cookie). Browser chấp nhận → lưu text file trên ổ cứng. User truy cập trang khác cùng site → browser gửi cookie kèm request → Server đọc và nhớ thông tin.
Data trong cookie tự động truyền giữa browser và server. CGI script server-side đọc/ghi cookie client. JS cũng thao tác cookie qua document.cookie (tạo, đọc, sửa, xóa cookie trang hiện tại).
Cách hoạt động PHP Cookie
Cookie thường set trong HTTP header (JS cũng set trực tiếp browser). PHP script set cookie gửi header dạng:
HTTP/1.1 200 OK Date: Fri, 04 Feb 2000 21:03:38 GMT Server: Apache/1.3.9 (UNIX) PHP/4.0b3 Set-Cookie: name=xyz; expires=Friday, 04-Feb-07 22:03:38 GMT; path=/; domain=tutorialspoint.com Connection: close Content-Type: text/html
Set-Cookie header chứa cặp name-value (URL encoded), ngày GMT, path, domain. expires yêu cầu browser "quên" cookie sau thời gian.
PHP cung cấp setcookie() (tối đa 6 tham số), phải gọi trước thẻ <html>.
Tóm tắt khác biệt
- JS Cookie: Client-side thao tác qua
document.cookie. Phù hợp tracking client-side, preference. - PHP Cookie: Server-side set qua HTTP header
Set-Cookie. Phù hợp session, auth, tracking server-side. - Cả hai cùng lưu trên client, nhưng JS thao tác client-side, PHP thao tác server-side.