PHP глобус возвращает массив с нумерацией страниц

Я использую php glob для поиска в папке изображений, соответствующих именам файлов, и возврата их в массив. Я не уверен, как установить ограничение на возврат и включить нумерацию страниц.

В настоящее время я использую следующее.

    $userpix = $this->_vars['user_username'];

    foreach (glob("./modules/user_gallery/data/{$userpix}_*.*") as $thumb) {
    $resize = preg_replace("/{$userpix}_/", "resize_", $thumb);

    $newstring = substr($thumb, 28);

    echo "<DIV style='float:left;padding:4px '><a href='$thumb' rel='lightbox'><img class='dropshadow' src='./modules/user_gallery/thumbs/grab.php?src=$thumb' width='150' height='100'></a><br /></div>";

    }

1 ответ

Вам нужно добавить дополнительный код (передать параметр страницы из запроса + вычислить минимальный / максимальный идентификатор изображения для отображения), т.е.

$userpix = $this->_vars['user_username'];

$page = min(1, (int)$_GET['page']);
$pageSize = 10;
$minId = ($page - 1) * $pageSize;
$maxId = $page * $pageSize - 1;


foreach (glob("./modules/user_gallery/data/{$userpix}_*.*") as $id = $thumb) {
    if ($id < $minId || $id > $maxId) {
       continue;
    }
    $resize = preg_replace("/{$userpix}_/", "resize_", $thumb);

    $newstring = substr($thumb, 28);

echo "<DIV style='float:left;padding:4px '><a href='$thumb' rel='lightbox'><img class='dropshadow' src='./modules/user_gallery/thumbs/grab.php?src=$thumb' width='150' height='100'></a><br /></div>";

}
Другие вопросы по тегам