首页 > 解决方案 > Array_Splice 不删除项目,正常返回数组中的每个项目

问题描述

我一直在尝试从文件夹中获取图像列表,然后使用 $_GET 值来限制接收的项目数量。我首先尝试“foreach”array_splice 函数,但我了解到它返回 REMOVED 项,例如,我想要获取“2”的值,然后返回图像 50-100、2、100-150,例如.. 也许更好的是值为 1 会返回图像 0-50、2、51-101 和 3 102-152。只是每个值都会返回 50 个不冲突的图像——你明白了哈哈。

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

$limit = 50;

if(!isset($_GET['page'])) {
    $page = (int)1;
} else {
    $page = (int)$_GET['page'];
}

$start = (int)(($page*$limit)-$limit);
$end = (int)($page*$limit);

$origin = scandir('imgs/');
$images = array_diff($origin, array('.', '..'));
array_slice($images, $end, $start);
echo $start . ' ' . $end;
?>

<?php
    $i = 0;
    foreach($images as $img) {
        echo $i . ' ';
        $i++;
    }
    ?>

标签: phparraysforeacharray-splice

解决方案


推荐阅读