46 votes

Détecter si une session PHP existe

Facebook propose désormais des abonnements aux utilisateurs afin que vous puissiez obtenir des mises à jour en temps réel sur les changements. Si mon application reçoit une mise à jour, je prévois de la stocker dans la base de données. J’aimerais aussi détecter si leur session existe. Si c’est le cas, je pourrais également mettre à jour les données.

Mes ID de session sont MD5 (fb_id + secret) afin que je puisse facilement modifier leur session. La question est de savoir comment puis-je détecter si la session existe.

63voto

Reign.85 Points 108

J’utilise une version combinée :

37voto

Sebastián Grignoli Points 7670

Selon le manuel PHP.net:

Si (ou pour PHP 4.0.6 ou moins) est utilisé, `` utilisez pour vérifier qu’une variable est enregistrée dans `` .

24voto

Toto Points 1173

Si vous êtes sur php 5.4+, il est plus propre d’utiliser session_status():

  • `` si les sessions sont désactivées.
  • `` si les sessions sont activées, mais qu’aucune n’existe.
  • `` si les sessions sont activées et qu’il en existe une.

1voto

Sabry Suleiman Points 123
function is_session_started()
{
    if ( php_sapi_name() !== 'cli' ) {
        if ( version_compare(phpversion(), '5.4.0', '>=') ) {
            return session_status() === PHP_SESSION_ACTIVE ? TRUE : FALSE;
        } else {
            return session_id() === '' ? FALSE : TRUE;
        }
    }
    return FALSE;
}

// Example
if ( is_session_started() === FALSE ) session_start();

1voto

Rushabh Koradia Points 11

Quelle méthode est utilisée pour vérifier si SESSION existe ou non ? Répondre:

Exemple:

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X