What improvements can be made to the provided PHP script for displaying images from a folder in a more efficient manner?

The provided PHP script currently reads all images from a folder and displays them one by one, which can be inefficient for large numbers of images. To improve efficiency, we can implement pagination to limit the number of images displayed per page. This will reduce the load time and improve the overall performance of the script.

<?php
$folder = "images/";
$files = scandir($folder);
$perPage = 10;
$page = isset($_GET['page']) ? $_GET['page'] : 1;
$start = ($page - 1) * $perPage;
$end = $start + $perPage;

echo "<div>";
for ($i = $start; $i < $end && $i < count($files); $i++) {
    if ($files[$i] != "." && $files[$i] != "..") {
        echo "<img src='$folder$files[$i]' alt='Image $i'><br>";
    }
}
echo "</div>";

$totalPages = ceil(count($files) / $perPage);
for ($i = 1; $i <= $totalPages; $i++) {
    echo "<a href='?page=$i'>$i</a> ";
}
?>