What are the best practices for managing session data in PHP to ensure security and efficiency?

Issue: To ensure security and efficiency when managing session data in PHP, it is important to properly sanitize and validate input, use secure session handling functions, and regularly clean up expired sessions.

// Start the session
session_start();

// Set session variables
$_SESSION['user_id'] = 12345;
$_SESSION['username'] = 'john_doe';

// Retrieve session variables
$user_id = $_SESSION['user_id'];
$username = $_SESSION['username'];

// Unset and destroy session
session_unset();
session_destroy();