What are best practices for managing sessions in PHP applications?

When managing sessions in PHP applications, it is important to ensure that session data is securely stored and accessed. This can be achieved by setting appropriate session configuration options, using HTTPS to encrypt session data in transit, and validating session data to prevent session hijacking.

// Start the session
session_start();

// Set session configuration options
ini_set('session.cookie_httponly', 1);
ini_set('session.cookie_secure', 1);

// Validate session data
if (!isset($_SESSION['authenticated']) || $_SESSION['authenticated'] !== true) {
    // Redirect to login page
    header('Location: login.php');
    exit;
}