Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Storing and Destroying Session Data | Understanding PHP Sessions
Practice
Projects
Quizzes & Challenges
Quiz
Challenges
/
PHP Sessions and Cookies

bookStoring and Destroying Session Data

Glissez pour afficher le menu

When you need to store information about a user across multiple requests in PHP, the $_SESSION superglobal is your main tool. This special associative array is available after you call session_start(), and it allows you to save data that persists as long as the session is active. You can set, retrieve, and manipulate variables in $_SESSION just like a regular array, making it a convenient way to keep track of user preferences, login states, or other temporary data without exposing it to the client.

session_store.php

session_store.php

copy
1234567891011
<?php session_start(); // Store data in the session $_SESSION["username"] = "alice"; $_SESSION["role"] = "admin"; // Retrieve data from the session echo "Username: " . $_SESSION["username"] . "<br>"; echo "Role: " . $_SESSION["role"]; ?>

In the previous script, you saw how to set and retrieve session variables after starting a session. When you want to remove data from the session, PHP provides two main functions. To remove a specific variable, you can use unset($_SESSION['key']). If you want to clear all session variables but keep the session itself active, use session_unset(). To destroy the session entirely, including all its data and the session ID, call session_destroy(). These functions are essential for managing session data securely, especially when a user logs out or when sensitive data should no longer be accessible.

session_destroy.php

session_destroy.php

copy
1234567891011
<?php session_start(); // Unset all session variables session_unset(); // Destroy the session session_destroy(); echo "Session data cleared and session destroyed."; ?>

To keep your application secure and prevent data leakage between users or sessions, always clean up session data when it is no longer needed. For example, after a user logs out, use both session_unset() and session_destroy() as shown above. This ensures that no sensitive information remains accessible in the session, and the session ID is invalidated. Referencing the earlier examples, remember to start your session before manipulating $_SESSION, and always clear session data when finishing a sensitive operation.

question mark

Which of the following statements about PHP session management is correct?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 3

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Section 1. Chapitre 3
some-alt