标签:php xml parsing pagination simplexml
参见英文答案 > How to Paginate lines in a foreach loop with PHP 2个
下面是我用于解析XML文件的代码,但是文件有很多记录,我想对它进行分页,每页显示20条记录.
我还想在页面底部的分页链接,以便用户也可以转到其他页面.它应该是这样的,如果没有给出值,那么它将从0开始到20否则如果值是2从40开始并且停止在60,test.php?page = 2.
$xml = new SimpleXMLElement('xmlfile.xml', 0, true);
foreach ($xml->product as $key => $value) {
echo "<a href=\"http://www.example.org/test/test1.php?sku={$value->sku}\">$value->name</a>";
echo "<br>";
}
解决方法:
这样的事情应该有效:
<?php
$startPage = $_GET['page'];
$perPage = 10;
$currentRecord = 0;
$xml = new SimpleXMLElement('xmlfile.xml', 0, true);
foreach($xml->product as $key => $value)
{
$currentRecord += 1;
if($currentRecord > ($startPage * $perPage) && $currentRecord < ($startPage * $perPage + $perPage)){
echo "<a href=\"http://www.example.org/test/test1.php?sku={$value->sku}\">$value->name</a>";
//echo $value->name;
echo "<br>";
}
}
//and the pagination:
for ($i = 1; $i <= ($currentRecord / $perPage); $i++) {
echo("<a href='thispage.php?page=".$i."'>".$i."</a>");
} ?>
标签:php,xml,parsing,pagination,simplexml 来源: https://codeday.me/bug/20190927/1824578.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。