我有一个需要更改的简单新闻系统,因此我可以限制每页的项目,但我没有任何可以做到这一点的东西,所以我需要自己做。
基本上该函数只显示整个平面文件数组,我想将其限制为每页 3 个项目(可配置)。
我的开始逻辑是:
$itemspage=pages->current_page;
$itemsperpage=3;
$limitn=$itemperpage*$itemspage;
$itemindex=$limitn-2;
如果 page 为 1,它将显示来自数组索引 1、2、3 的新闻 如果 page 为 2,它将显示来自数组索引 4、5、6 的新闻,依此类推...
我认为这在逻辑上应该可行,但是如果数组中的新闻不能分成 3 条呢?使用这种逻辑,这应该(至少在起始索引上)会导致错误。
整个代码在这里:
$list = $this->getNewsList();
$pages = new Paginator;
echo "<table class='newsList'>";
foreach ($list as $value) {
$newsData = file($this->newsDir.DIRECTORY_SEPARATOR.$value);
$newsTitle = $newsData[0];
$submitDate = $newsData[1];
unset ($newsData['0']);
unset ($newsData['1']);
$newsContent = "";
$itemspage=pages->current_page;
$itemperpage=3;
$limitn=$itemperpage*$itemspage;
$itemindex=$limitn - 2;
foreach ($newsData as $value) {
$newsContent .= $value;
}
echo "<tr><th align='left'>$newsTitle</th>
<th class='right'>$submitDate</th></tr>";
echo "<tr><td colspan='2'>".$newsContent."<br/></td></tr>";
}
echo "</table>";
for 还没有完成,只是拆分背后的逻辑。你可以帮帮我吗?