What are some common strategies for optimizing PHP code that retrieves and organizes data from multiple database tables?

When retrieving and organizing data from multiple database tables in PHP, it is important to optimize the code to improve performance. One common strategy is to minimize the number of queries by using JOINs to fetch related data in a single query. Additionally, using indexes on the columns being queried can speed up the retrieval process. Caching frequently accessed data can also help reduce the load on the database server.

// Example of optimizing PHP code to retrieve and organize data from multiple database tables

// Connect to the database
$connection = new mysqli('localhost', 'username', 'password', 'database');

// Fetch data using a JOIN query
$query = "SELECT users.username, orders.order_id, orders.total_amount 
          FROM users
          JOIN orders ON users.user_id = orders.user_id";

$result = $connection->query($query);

// Loop through the results and organize the data
$data = [];
while ($row = $result->fetch_assoc()) {
    $data[$row['username']][] = ['order_id' => $row['order_id'], 'total_amount' => $row['total_amount']];
}

// Close the database connection
$connection->close();

// Use the organized data as needed
print_r($data);