Maison >développement back-end >tutoriel php >Comment vérifier si la session PHP a été démarrée ?

Comment vérifier si la session PHP a été démarrée ?

王林
王林avant
2023-08-28 21:25:06915parcourir

Comment vérifier si la session PHP a été démarrée ?

En PHP, nous utilisons la fonction intégrée session_start() pour démarrer la session. Mais le problème que nous avons avec le script PHP est que si nous l'exécutons plus d'une fois, il génère une erreur. Nous allons donc apprendre ici comment vérifier si la session a été démarrée sans appeler deux fois la fonction session_start().

Il existe deux façons de résoudre ce problème.

Pour les versions PHP inférieures à 5.4.0.

Exemple

<?php
   if(session_id() == &#39;&#39;){
      session_start();
   }
?>

Explication

Le code ci-dessus démarrera toujours la session dans un script PHP si la session n'est pas démarrée.

Dans la deuxième méthode, nous pouvons utiliser la fonction session_status(), qui renvoie l'état de la session en cours. Cette fonction peut renvoyer trois valeurs entières, qui sont des constantes prédéfinies. Ce sont :

  • 0 – PHP_SESSION_DISABLED : La session est actuellement désactivée.
  • 1 – PHP_SESSION_NONE : La session est activée mais pas encore démarrée.
  • 2 – PHP_SESSION_ACTIVE : La session est activée et démarrée.

Exemple :

<?php
   if (session_status() == PHP_SESSION_NONE) {
      session_start();
   }
?>

Explication

Le code ci-dessus vérifie si la session a été démarrée, sinon il démarre la session dans un script PHP.

Remarque

La fonction session_status() ne s'exécute qu'en PHP version 5.4.0 ou supérieure.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer