What potential issue could arise when trying to retrieve all records from a table in PHP?

When trying to retrieve all records from a table in PHP, a potential issue that could arise is memory exhaustion if the table contains a large number of records. To solve this issue, you can fetch records from the database in smaller chunks using pagination. By limiting the number of records fetched at a time, you can prevent memory exhaustion and improve the performance of your application.

// Set the limit and offset for pagination
$limit = 100; // Number of records to fetch at a time
$offset = 0; // Initial offset

// Fetch records in chunks
while (true) {
    $query = "SELECT * FROM table_name LIMIT $limit OFFSET $offset";
    $result = mysqli_query($connection, $query);
    
    // Process the fetched records
    
    $num_rows = mysqli_num_rows($result);
    if ($num_rows < $limit) {
        break; // No more records to fetch
    }
    
    $offset += $limit; // Update the offset for the next iteration
}