Cookie trong PHP

Tạo bởi Hoàng Vũ, chỉnh sửa cuối lúc 27 tháng 2, 2025

Cookie là một cơ chế lưu trữ dữ liệu trên trình duyệt của người dùng trong một khoảng thời gian nhất định. Khác với session, cookie giúp duy trì thông tin ngay cả khi người dùng đóng trình duyệt. Trong bài học này, chúng ta sẽ tìm hiểu cách tạo, đọc và xóa cookie trong PHP.

1. Cookie trong PHP

1.1 Cookie là gì? Khác gì so với session?

  • Cookie là dữ liệu được lưu trữ trên trình duyệt của người dùng, có thể tồn tại trong thời gian dài.
  • Session là dữ liệu được lưu trữ trên server và sẽ hết hạn khi người dùng đóng trình duyệt hoặc sau một khoảng thời gian nhất định.
  • Cookie thích hợp dùng để:
    • Lưu trữ thông tin người dùng (vd: ngôn ngữ ưu thích, cài đặt giao diện, ghi nhớ đăng nhập).
    • Theo dõi hành vi người dùng trên website.

1.2 Cách tạo, đọc và xóa cookie trong PHP

Bước 1: Tạo cookie

Cookie được thiết lập bằng hàm setcookie():

setcookie("username", "NguyenVanA", time() + (86400 * 30), "/"); // Cookie có hiệu lực 30 ngày

Giải thích:

  • "username" là tên cookie.
  • "NguyenVanA" là giá trị lưu trữ.
  • time() + (86400 * 30): Cookie tồn tại trong 30 ngày.
  • "/" giúp cookie có thể truy cập tại mọi trang trên website.

Bước 2: Đọc cookie

Kiểm tra xem cookie đã được tạo hay chưa:

if(isset($_COOKIE["username"])) {
    echo "Xin chào, " . $_COOKIE["username"];
} else {
    echo "Cookie không tồn tại!";
}

Bước 3: Xóa cookie

Xóa cookie bằng cách thiết lập thời gian hết hạn trong quá khứ:

setcookie("username", "", time() - 3600, "/");

1.3 Ứng dụng cookie trong lưu trữ thông tin người dùng

Ghi nhớ đăng nhập

if(isset($_POST["remember_me"])) {
    setcookie("user_login", $_POST["username"], time() + (86400 * 30), "/");
}

Lưu trữ tùy chỉnh giao diện

setcookie("theme", "dark", time() + (86400 * 30), "/");

2. Kết luận

  • Cookie là gì và khác gì so với session.
  • Cách tạo, đọc và xóa cookie trong PHP.
  • Ứng dụng cookie trong lưu trữ thông tin người dùng.
Website Logo

Với hơn 10 năm kinh nghiệm lập trình web và từng làm việc với nhiều framework, ngôn ngữ như PHP, JavaScript, React, jQuery, CSS, HTML, CakePHP, Laravel..., tôi hy vọng những kiến thức được chia sẻ tại đây sẽ hữu ích và thiết thực cho các bạn.

Bình luận

Website Logo

Chào, tôi là Vũ. Đây là blog hướng dẫn lập trình của tôi.

Liên hệ công việc qua email dưới đây.

lhvuctu@gmail.com

Chúng Tôi Trên

Bạn đang muốn học về lập trình website?

Bạn cần nâng cao kiến thức chuyên nghiệp hơn để nâng cao cơ hội nghề nghiệp? Liên hệ