How can PHP authentication be implemented effectively without relying on server variables like PHP_AUTH_USER?

Using session variables for authentication in PHP is a more secure and flexible alternative to relying on server variables like PHP_AUTH_USER. By storing user credentials in a session variable upon successful login and checking this variable on subsequent requests, you can effectively implement authentication without exposing sensitive information in the server variables.

<?php
session_start();

// Check if user is authenticated
if (!isset($_SESSION['authenticated'])) {
    header('Location: login.php');
    exit();
}

// Proceed with protected content
echo 'Welcome, ' . $_SESSION['username'];
?>