In terms of best practices, how can the code be optimized to improve performance when fetching and displaying user statuses for events?

To optimize performance when fetching and displaying user statuses for events, one approach is to minimize the number of database queries by using JOINs to retrieve all necessary data in a single query. Additionally, consider implementing caching mechanisms to store and retrieve frequently accessed data, reducing the need for repeated database calls.

// Example code snippet using JOIN to fetch user statuses for events
$query = "SELECT users.username, events.event_name, user_statuses.status
          FROM users
          JOIN user_statuses ON users.id = user_statuses.user_id
          JOIN events ON events.id = user_statuses.event_id
          WHERE events.id = :event_id";

// Execute the query and fetch the results
$stmt = $pdo->prepare($query);
$stmt->bindParam(':event_id', $event_id);
$stmt->execute();
$user_statuses = $stmt->fetchAll(PDO::FETCH_ASSOC);

// Display user statuses for events
foreach ($user_statuses as $status) {
    echo $status['username'] . " is " . $status['status'] . " for " . $status['event_name'] . "<br>";
}