What are some alternative methods to deleting records in a database to determine the number of users online in PHP?

One alternative method to determine the number of users online in PHP without deleting records in a database is to use session variables to track active users. Each time a user visits a page, you can store their unique session ID in an array and update a timestamp to track their last activity. By checking the array for active sessions within a certain timeframe, you can determine the number of users currently online.

// Start session
session_start();

// Initialize array to store active sessions
$active_sessions = [];

// Check for active sessions within a certain timeframe (e.g. last 5 minutes)
foreach ($_SESSION as $key => $value) {
    if (time() - $value['last_activity'] < 300) {
        $active_sessions[] = $key;
    }
}

// Output number of users online
echo count($active_sessions);