检测/打印当前页码(分页)的最佳方法是什么?
我尝试了两种不同的方式,现在我想知道是否有更好的方法来实现它。
I:
$number = 12; //current page number
$all = 40; // all pages
$range = 4; // number of pages shown (up and down)
$min = $number-$range;
$max= $number+$range+1;
for($i=$min; $i<$number;$i++) {
echo "<a href='#'>$i</a><br/>";
}
echo "$number<br/>";
for($i=($number+1); $i<$max;$i++) {
echo "<a href='#'>$i</a></br>";
}
II:
$number = 12; //current page number
$all = 40; // all pages
$range = 4; // number of pages shown (up and down)
$min = $number-$range;
$max= $number+$range+1;
for($i=$min; $i<$max;$i++) {
if($i!=$number) {
echo "<a href='#'>$i</a><br/>";
} else {
echo "$i<br/>";
}
}
我还检查了两种解决方案的速度(使用不同的高数$all
值),并且在大多数情况下,第一种解决方案更快。
感谢您的建议:)
答案 0 :(得分:0)
这是一个功能替代方案(0到10页;用$min
$number-1
替换它。)
echo implode("<br/>",
array_map(function($x){
return "<a href='..'>$x</a>";
}, range(0,10))
);
请定时,让我知道。 :)