如何在PHP中的foreach循环中设置start和limit

时间:2017-03-27 17:56:28

标签: php arrays foreach limit

<?php
for ($i = 1; $i<=$pages_item; $i++) {
echo "<tr><td>Page ".$i."</td></tr>";   
}
foreach ($array_item as $item) {
echo "<tr class=link onclick=window.location.href='item.php?
id=".$item[$item_id]."'>";
}
?>

我使用CSS而不是javascript从PHP中的MySQL查询创建页面。页面系统有效。

我需要的是能够限制foreach循环,就像for循环中的每个页面一样,我希望foreach循环在特定的起点和终点处遍历我的数组。

我想要像这样

每页都

每个项目从这里开始到此结束

做魔术

从这里开始增加

增加到此结束

完成

我需要让它在for循环中的foreach循环中每页显示50个结果。我已经看过数组切片,但这只会设置一个起点而不是真正做我想要的。

1 个答案:

答案 0 :(得分:0)

$start_item, $results = 0, 50;    
for ($i = 1; $i<=$pages_item; $i++) {
    echo "DO PAGE MAGIC";
    $slice_item = array_slice($array_item, $start_item, $results);
    foreach ($slice_item as $item) {
        echo "DO START-LIMIT CODE";
    }
    $start_item = $start_item + $results;
    if ($i == $pages_item) {
        echo "</ul>";
    }
}

我用数组切片解决了它。这很简单,感谢评论中的建议。