好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

PHP中array_slice函数用法介绍 - php函数

PHP中array_slice函数用法介绍

文章专门来详细的介绍了array_slice函数的详细用法以及一些常用的array_slice实例程序,有需要了解的同学可看看.

array_slice() 函数在数组中根据条件取出一段值,并返回.

注释: 如果数组有字符串键,所返回的数组将保留键名,参见例子 4.

语法: array_slice(array,offset,length,preserve)

函数在数组中根据条件取出一段值,并返回.

参数: array  必需,规定输入的数组,offset  必需,数值,规定取出元素的开始位置,如果是正数,则从前往后开始取,如果是负值,从后向前取 offset 绝对值.

length  可选,数值,规定被返回数组的长度,如果是负数,则从后向前,选取该值绝对值数目的元素,如果未设置该值,则返回所有元素.

preserve 可选,可能的值:true – 保留键 false – 默认 – 重置键,当为0的时候,将里面的值赋值给一个新的变量,最后返回这个变量,今天闲着翻了一下手册,原来这东西是有现成的函数的:array_slice,代码如下:

<?php       $arr  =  array (0,1,2,3,4);      var_dump( array_slice ( $arr ,0,2));                   echo   "<br/>" ;             $arr2  =  array ( 'a' => array ( 'a' , 'a' , 'a' ), 'b' => array ( 'b' , 'b' , 'b' ));            var_dump( array_slice ( $arr2 ,0,1));  ?>  //返回的结果如下:   array (2) { [0]=> int(0) [1]=> int(1) }   array (1) { [ "a" ]=>  array (3) { [0]=> string(1)  "a"  [1]=> string(1)  "a"  [2]=> string(1)  "a"  } } 

我找到了array_slice函数,非常好用,分享一下:

<?php  //假定一个结果集二维数组:       $arr  =  array ( array ( 'name' =>  'name1' , 'sex'  =>  'sex1' , 'job'  =>  'job1' ),                 array ( 'name' =>  'name2' , 'sex'  =>  'sex2' , 'job'  =>  'job2' ),                 array ( 'name' =>  'name3' , 'sex'  =>  'sex3' , 'job'  =>  'job3' ),                 array ( 'name' =>  'name4' , 'sex'  =>  'sex4' , 'job'  =>  'job4' ),                 array ( 'name' =>  'name5' , 'sex'  =>  'sex5' , 'job'  =>  'job5' ),                 array ( 'name' =>  'name6' , 'sex'  =>  'sex6' , 'job'  =>  'job6' ),                 array ( 'name' =>  'name7' , 'sex'  =>  'sex7' , 'job'  =>  'job7' ),                 array ( 'name' =>  'name8' , 'sex'  =>  'sex8' , 'job'  =>  'job8' ),                 array ( 'name' =>  'name9' , 'sex'  =>  'sex9' , 'job'  =>  'job9' ),                 array ( 'name' =>  'name10' , 'sex'  =>  'sex10' , 'job'  =>  'job10' ),                 array ( 'name' =>  'name11' , 'sex'  =>  'sex11' , 'job'  =>  'job11' ),                 array ( 'name' =>  'name12' , 'sex'  =>  'sex12' , 'job'  =>  'job12' ),       );      //计算总记录条数     $num  =  count ( $arr );    //规定每页显示的条数     $perpage  = 3;    //计算页数     $pages  =  ceil ( $num / $perpage );    //echo $num,$perpage,$pagecount;exit;     if ( is_numeric ( $_REQUEST [ 'page' ]))   {     if ( $_REQUEST [ 'page' ]<1){      $page  = 1;    } elseif ( $_REQUEST [ 'page' ]> $pages )    {      $page  =  $pages ;    } else {     $page  =  $_REQUEST [ 'page' ];     }   } else {     $page  = 1;   }    $start  = ( $page -1)* $perpage ;    $newpage  =  array_slice ( $arr , $start , $perpage ,true);    //print_r($newpage);exit;   ?>  <table cellpadding= "0"  cellspacing= "0"  border= "1" >   <tr>    <td>name</td>    <td>sex</td>    <td>job</td>   </tr>  <?php    foreach ( $newpage   as   $k  =>  $v )  {  ?>   <tr>    <td><?php  echo    $v [ 'name' ]; ?></td>    <td><?php  echo    $v [ 'sex' ]; ?></td>    <td><?php  echo    $v [ 'job' ]; ?></td>   </tr>  <?php  }  ?>  </table>  <?php  if ( $page >1){    echo   "<a href='?page=1'>首页</a>" ;    echo   "<a href='?page=" .( $page -1). "'>上一页</a>" ;  } //开源软件:phpfensi测试数据   if ( $page < $pages )  {    echo   "<a href='?page=" .( $page +1). "'>下一页</a>" ;    echo   "<a href='?page=" . $pages . "'>末页</a>" ;  }  ?>

查看更多关于PHP中array_slice函数用法介绍 - php函数的详细内容...

  阅读:42次