What are best practices for limiting the number of images displayed per row and per page when using PHP to show images from a directory?

When displaying images from a directory using PHP, it's important to limit the number of images displayed per row and per page to ensure a clean and organized layout. One way to achieve this is by using a counter variable to keep track of the number of images displayed and reset it when reaching the desired limit for each row or page.

<?php
$dir = 'images/'; // directory containing images
$images = glob($dir . '*.{jpg,jpeg,png,gif}', GLOB_BRACE); // get array of image files

$images_per_row = 3; // limit of images per row
$images_per_page = 9; // limit of images per page
$image_counter = 0;

foreach ($images as $image) {
    if ($image_counter % $images_per_row == 0) {
        echo '<div class="row">';
    }

    echo '<div class="col">';
    echo '<img src="' . $image . '" alt="Image">';
    echo '</div>';

    $image_counter++;

    if ($image_counter % $images_per_row == 0) {
        echo '</div>'; // close row
    }

    if ($image_counter == $images_per_page) {
        break; // limit reached, stop displaying images
    }
}

if ($image_counter % $images_per_row != 0) {
    echo '</div>'; // close row if not already closed
}
?>