微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP-从foreach循环中显示“ X”项,并显示下一个“ X”项的链接

我有一个foreach循环,该循环遍历一个数组(simpleXML节点).该数组中可以包含0到几百个项目.我想找到一种方法显示前10个结果,然后有一个链接显示后10个结果,依此类推.

例如,我目前有:

$i=0;
$limit=10;
foreach ($nodes as $node){
echo "here is the output: ".$node."<br>\n";
if (++$i >=$limit) break;
}

显然,无论$nodes数组中有多少个项目,它只会显示前10个.但是我想我读到了foreach循环每次运行时都会重置计数器-因此,如果我想要一个链接说:next 10 itmes-我不确定如何告诉循环从index = 10开始.

我什至在这里吠叫正确的树吗?

解决方法:

这称为分页.您可以使用array_slice:http://php.net/array_slice提取所需的数组段

<?PHP
$page = isset($_GET['page']) ? intval($_GET['page']) : 0;
$elementsPerPage = 10;
$elements = array_slice($nodes, $page * $elementsPerPage, $elementsPerPage);

foreach($elements as $node)
{
    echo "Here is the output: ".$node."<br>\n";
}

然后,您只需要一个链接,并使用参数?page = $page 1指向同一页面.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐