循环浏览图像文件夹并每次返回下3个图像

时间:2013-09-06 22:52:44

标签: php

我目前有一个图像文件夹,我试图通过AJAX调用循环,我想一次返回3直到结束,然后从头开始。

如果达到目的,那么我就会遇到从初始开始的逻辑问题。

这是我现在所拥有的。

$images = glob("images/*.jpg");

// sort images by file time
usort($images, function($a, $b) {
     return filemtime($a) < filemtime($b);
});

$images = array_slice($images, $start_pos, 3);

将图像切割为3 $start_pos的组将为0,然后在第一次调用之后,最多为3以返回图像4,5,6。但是目前,如果我的图像数量不超过3张,那么设置3的$start_pos将不返回任何内容,而不是重新开始。

2 个答案:

答案 0 :(得分:1)

if (count($images) > 3) {
    $start_pos += 3;
}
$images = array_slice($images, $start_pos, 3);

答案 1 :(得分:0)

使用模数循环循环。

$selectedImages=array();
$imageNum=0;
for($i=$start_pos%count($images);$imageNum<3;i=(i+1)%count($images),$imageNum++)
{
    $selectedImages[$imageNum]=$images[$i]
}