Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

Kiểm tra session PHP đã bắt đầu chưa

Gọi session_start() nhiều lần gây lỗi. Cách kiểm tra trước khi khởi động:

PHP < 5.4.0

<?php
if (session_id() === '') {
    session_start();
}
?>

session_id() trả về chuỗi rỗng nếu chưa có session.

PHP ≥ 5.4.0 (Khuyên dùng)

Dùng session_status() trả về hằng số:

  • PHP_SESSION_DISABLED (0): Session bị tắt.
  • PHP_SESSION_NONE (1): Session bật nhưng chưa start.
  • PHP_SESSION_ACTIVE (2): Session đang hoạt động.
<?php
if (session_status() === PHP_SESSION_NONE) {
    session_start();
}
?>