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>";
}