Aktueller Standort: Startseite> Neueste Artikel> PHP Session Checking Guide: So bestimmen Sie, ob eine Sitzung begonnen hat

PHP Session Checking Guide: So bestimmen Sie, ob eine Sitzung begonnen hat

M66 2025-09-19

Überprüfen Sie, ob die Sitzung in PHP begonnen hat

In PHP verwenden wir die integrierte Funktion Session_start (), um die Sitzung zu starten. Wenn Sie die Funktion jedoch wiederholt im selben Skript aufrufen, verursacht dies einen Fehler. Daher ist es am besten zu überprüfen, ob die Sitzung vor der Ausführung von Session_start () begonnen hat.

Methode 1: anwendbar für PHP 5.4.0 oder darunter

Für frühere Versionen von PHP können Sie überprüfen, ob die Sitzung begonnen hat, ob Session_id () leer ist.

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

erklären

Wenn die Sitzung nicht gestartet wird, startet der obige Code die Sitzung, um sicherzustellen, dass Session_start () nicht wiederholt aufgerufen wird.

Methode 2: anwendbar für PHP 5.4.0 und höher

Ab PHP 5.4.0 können Sie die Funktion Session_Status () verwenden, um den aktuellen Sitzungsstatus zu erhalten. Diese Funktion gibt die folgenden drei staatlichen Konstanten zurück:

  • PHP_Session_Disabled: Die Sitzung ist deaktiviert
  • PHP_Session_None: Die Sitzung ist aktiviert, hat aber noch nicht begonnen
  • PHP_Session_Active: Die Sitzung ist aktiviert und gestartet
<?php
if(session_status() == PHP_SESSION_NONE) {
    session_start();
}
?>

erklären

Der Code ermittelt, ob Session_Status () PHP_Session_None ist, und startet die Sitzung, wenn die Sitzung nicht gestartet wird, wodurch Fehler durch wiederholte Anrufe bei Session_Start () vermieden werden.

Dinge zu beachten

Die in Methode 2 verwendete Session_Status () -Funktion ist nur für PHP 5.4.0 und höher anwendbar, und die niedrigere Version von PHP erfordert Methode 1.