Contents
Cookie là gì?
Một cookie thường được sử dụng để xác định người dùng. PHP 7 Cookie là một tập tin nhỏ mà máy chủ nhúng trên máy tính của người dùng. Mỗi lần cùng một máy tính yêu cầu một trang có trình duyệt, nó cũng sẽ gửi cookie. Với PHP, bạn có thể tạo và lấy các giá trị cookie.
Sử dụng Cookie trong PHP 7 để làm gì?
1 |
setcookie(name, value, expire, path, domain, secure, httponly); |
Chỉ tham số tên là bắt buộc. Tất cả các thông số khác là tùy chọn.
PHP Tạo / Lấy Cookie
Ví dụ sau đây tạo một cookie có tên “người dùng” với giá trị “John Doe”. Cookie sẽ hết hạn sau 30 ngày (86400 * 30). “/” Có nghĩa là cookie có sẵn trong toàn bộ trang web (nếu không, hãy chọn thư mục bạn thích).
Sau đó, chúng tôi sẽ truy xuất giá trị của “người dùng” cookie (sử dụng biến toàn cục $ _COOKIE). Chúng tôi cũng sử dụng hàm isset () để tìm hiểu xem cookie có được đặt không:
Ví dụ về Cookie
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<?php $cookie_name = "user"; $cookie_value = "John Doe"; setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day ?> <html> <body> <?php if(!isset($_COOKIE[$cookie_name])) { echo "Cookie named '" . $cookie_name . "' is not set!"; } else { echo "Cookie '" . $cookie_name . "' is set!<br>"; echo "Value is: " . $_COOKIE[$cookie_name]; } ?> </body> </html> |
Để sửa đổi cookie, chỉ cần đặt (một lần nữa) cookie bằng hàm setcookie ():
Ví dụ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<?php $cookie_name = "user"; $cookie_value = "Alex Porter"; setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); ?> <html> <body> <?php if(!isset($_COOKIE[$cookie_name])) { echo "Cookie named '" . $cookie_name . "' is not set!"; } else { echo "Cookie '" . $cookie_name . "' is set!<br>"; echo "Value is: " . $_COOKIE[$cookie_name]; } ?> </body> </html> |
Để xóa cookie, hãy sử dụng hàm setcookie () có ngày hết hạn trong quá khứ:
Ví dụ
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php // set the expiration date to one hour ago setcookie("user", "", time() - 3600); ?> <html> <body> <?php echo "Cookie 'user' is deleted."; ?> </body> </html> |
Kiểm tra nếu PHP 7 Cookie được kích hoạt
Ví dụ sau đây tạo một tập lệnh nhỏ để kiểm tra xem cookie có được bật hay không. Trước tiên, hãy thử tạo cookie thử nghiệm với hàm setcookie (), sau đó đếm biến mảng $ _COOKIE
Ví dụ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php setcookie("test_cookie", "test", time() + 3600, '/'); ?> <html> <body> <?php if(count($_COOKIE) > 0) { echo "Cookies are enabled."; } else { echo "Cookies are disabled."; } ?> </body> </html> |