array_slice() -从数组中取出一段 和sql语句一样实现分页,将查询出的数组,取出从指定下标开始到指定长度的数组
$count = count($list);//总条数
//$start 开始显示的条数
$start=($page-1)*$pagesize;//偏移量,当前页-1乘以每页显示条数
//$list 分页显示的数组
$article = array_slice($list,$start,$pagesize);
语法
array_slice(array,start,length,preserve)
参数 | 描述 |
---|---|
array | 必需。规定数组。 |
start | 必需。数值。规定取出元素的开始位置。 0 = 第一个元素。 如果该值设置为正数,则从前往后开始取。如果该值设置为负数,则从后向前取 start 绝对值。 -2 意味着从数组的倒数第二个元素开始。 |
length | 可选。数值。规定被返回数组的长度。 如果该值设置为整数,则返回该数量的元素。如果该值设置为负数,则函数将在举例数组末端这么远的地方终止取出。如果该值未设置,则返回从 start 参数设置的位置开始直到数组末端的所有元素。 |
preserve | 可选。规定函数是保留键名还是重置键名。可能的值:true - 保留键名false - 默认。重置键名 |
示例
<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow","e"=>"brown");
print_r(array_slice($a,1,2));$a=array("0"=>"red","1"=>"green","2"=>"blue","3"=>"yellow","4"=>"brown");
print_r(array_slice($a,1,2));
?>