How can session variables be effectively used to personalize user profiles in PHP?

Session variables can be effectively used to personalize user profiles in PHP by storing user-specific information such as username, email, and preferences. This information can be stored in session variables when the user logs in and accessed throughout their session to display personalized content.

// Start the session
session_start();

// Set session variables when user logs in
$_SESSION['username'] = 'JohnDoe';
$_SESSION['email'] = 'johndoe@example.com';
$_SESSION['preferences'] = ['theme' => 'dark', 'language' => 'english'];

// Access session variables to personalize user profile
echo 'Welcome back, ' . $_SESSION['username'] . '!'; // Output: Welcome back, JohnDoe!
echo 'Your email is: ' . $_SESSION['email']; // Output: Your email is: johndoe@example.com
echo 'Your preferred theme is: ' . $_SESSION['preferences']['theme']; // Output: Your preferred theme is: dark