搜索
首页php教程PHP源码PHP 二维数组分页处理

PHP 二维数组分页处理

两种方式,一种直接用array_slice(),另外一种是传统方式for循环次数的控制,大家看看给些意见,或者谁有更好的办法,也一并分享出来,谢谢。 

方法一:

<?php
$arr_click = array(
array( &#39;clicks&#39; => 3, &#39;clickDate&#39; =>&#39;2010-10-11&#39; ),
array( &#39;clicks&#39; => 2, &#39;clickDate&#39; =>&#39;2010-10-11&#39; ),
array( &#39;clicks&#39; => 3, &#39;clickDate&#39; =>&#39;2010-10-09&#39; ),
array( &#39;clicks&#39; => 1, &#39;clickDate&#39; =>&#39;2010-10-08&#39; ),
);
$page = 2;
$indexinpage=2;
$newarr = array_slice($arr_click, ($page-1)*$indexinpage, $indexinpage);
?>

原理如下:
和分页原理一样
数组用 array_slice(array,offset,length) 函数在数组中根据条件取出一段值。
array:需要处理的数组
offset:取出元素的开始位置
length:返回数组的长度
在每页中改变 offset 的值就行了!
方法二:
例如:

<?php
$arr_click = array(
array( &#39;clicks&#39; => 3, &#39;clickDate&#39; =>&#39;2010-10-11&#39; ),
array( &#39;clicks&#39; => 2, &#39;clickDate&#39; =>&#39;2010-10-11&#39; ),
array( &#39;clicks&#39; => 3, &#39;clickDate&#39; =>&#39;2010-10-09&#39; ),
array( &#39;clicks&#39; => 1, &#39;clickDate&#39; =>&#39;2010-10-08&#39; ),
);
$size = 3;
$pnum = ceil(count($arr_click) / $size);
if(isset($_GET[&#39;page&#39;])){
    $page = intval($_GET[&#39;page&#39;]);
    $page = $page > $pnum? $pnum: $page;
    $page = $page < $pnum? 1: $page;
}else{
    $page = 1;
}
for($i = 0; $i < $size; $i++){
    if(!isset($arr_click[($page - 1) * $size + $i]))break;
    echo &#39;<pre class="brush:php;toolbar:false">&#39;;
    print_r($arr_click[($page - 1) * $size + $i]);
    echo &#39;<br>&#39;;
}
?>
<a href="ad.php?page=<?php echo $page - 1 > 0? $page - 1: 1; ?>">上一页</a>
<a href="ad.php?page=<?php echo $page + 1 < $pnum? $page + 1: $pnum; ?>">下一页</a>


 以上就是PHP 二维数组分页处理的内容,更多相关内容请关注PHP中文网(www.php.cn)!


声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器