- Khi bạn làm việc với một ứng dụng, bạn mở nó, thực hiện một số thay đổi, rồi đóng nó. Điều này giống như một session. Máy tính biết bạn là ai. Nó biết khi nào bạn bắt đầu ứng dụng và khi nào bạn kết thúc. Nhưng trên internet có một vấn đề: máy chủ web không biết bạn là ai hoặc bạn làm gì, vì địa chỉ HTTP không duy trì trạng thái.
- Biến session giải quyết vấn đề này bằng cách lưu trữ thông tin người dùng sẽ được sử dụng trên nhiều trang (ví dụ: tên người dùng, màu yêu thích, v.v.). Theo mặc định, các biến session kéo dài cho đến khi người dùng đóng trình duyệt.
- Vì thế, Các biến session chứa thông tin về một người dùng và có sẵn cho tất cả các trang trong một ứng dụng.
Một session được bắt đầu với session_start()
chức năng.
Các biến session được đặt bằng biến toàn cục PHP: $_SESSION
.
Bây giờ, hãy tạo một trang mới có tên "demo_session1.php". Trong trang này, chúng tôi bắt đầu một session PHP mới và đặt một số biến session:
Tiếp theo, chúng tôi tạo một trang khác gọi là "demo_session2.php". Từ trang này, chúng tôi sẽ truy cập thông tin session mà chúng tôi đã đặt trên trang đầu tiên ("demo_session1.php").
Lưu ý rằng các biến session không được chuyển riêng lẻ cho từng trang mới, thay vào đó chúng được truy xuất từ session chúng tôi mở ở đầu mỗi trang ( session_start()
).
Cũng lưu ý rằng tất cả các giá trị của biến session được lưu trữ trong biến $_SESSION
toàn cục:
Để thay đổi một biến session, chỉ cần ghi đè lên nó:
Để xóa tất cả các biến session toàn cầu và hủy session, hãy sử dụng session_unset()
và session_destroy()
: