"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment détruire une session PHP pendant que le navigateur reste ouvert?

Comment détruire une session PHP pendant que le navigateur reste ouvert?

Publié le 2025-04-12
Parcourir:434

How to Destroy a PHP Session Even When the Browser Remains Open?

Destruction de session efficace pour les navigateurs qui restent ouverts

Lors de l'implémentation de la fonctionnalité de déconnexion utilisateur, il est crucial de garantir la suppression complète de la session et des données associées même si le navigateur n'est pas fermé. L'extrait de code suivant, bien que couramment utilisé, peut ne pas suffire:

session_start();

if (isset($_SESSION)) {
    unset($_SESSION);
    session_unset();
    session_destroy();
}

Selon le manuel PHP, pour terminer pleinement une session, l'ID de session doit également être supprimé. Dans les cas où les cookies sont utilisés pour la propagation de session (qui est la valeur par défaut), le cookie de session doit être supprimé à l'aide de setcookie ().

L'approche recommandée pour détruire une session comprend:

// Initialize the session
session_start();

// Unset all session variables
$_SESSION = array();

// Delete session cookie if cookies are used
if (ini_get("session.use_cookies")) {
    $params = session_get_cookie_params();
    setcookie(session_name(), '', time() - 42000,
        $params["path"], $params["domain"],
        $params["secure"], $params["httponly"]
    );
}

// Destroy the session
session_destroy();

En incorporant cette approche, vous pouvez détruire efficacement la session et ses données, que le navigateur reste ouvert. Cela garantit une suppression complète des informations utilisateur pour une sécurité et une confidentialité améliorées.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3