php array_slice() 函数
PHP array_slice() 函数
PHP Array 函数
定义和用法:array_slice() 函数在数组中根据条件取出一段值,并返回.
注释:如果数组有字符串键,所返回的数组将保留键名,参见例子 4.
语法:array_slice(array,offset,length,preserve)
参数 描述
array 必需,规定输入的数组.
offset 必需,数值,规定取出元素的开始位置,如果是正数,则从前往后开始取,如果是负值,从后向前取 offset 绝对值.
length 可选,数值,规定被返回数组的长度,如果是负数,则从后向前,选取该值绝对值数目的元素,如果未设置该值,则返回所有元素.
preserve 可选,可能的值:true - 保留键,false - 默认 - 重置键.
PHP实例代码如下:
- <?php
- /*
- 用手册上的例子
- */
- $input = array ("a", "b", "c", "d", "e");
- $output = array_slice ($input, 2); // returns "c", "d", and "e",
- $output = array_slice ($input, 2, -1); // returns "c", "d"
- $output = array_slice ($input, -2, 1); // returns "d"
- $output = array_slice ($input, 0, 3); // returns "a", "b", and "c"
- ?>
实例:
- <?php
- $term = $_REQUEST['q'];
- $images = array_slice(scandir("images"), 2);
- foreach($images as $value) {
- if( strpos(strtolower($value), $term) === 0 ) {
- echo $value . " ";
- }
- }
- ?>
- <?php
- // split the given array into n number of pieces
- function array_split($array, $pieces=2)
- {
- if ($pieces < 2)
- return array($array);
- $newCount = ceil(count($array)/$pieces);
- $a = array_slice($array, 0, $newCount);
- $b = array_split(array_slice($array, $newCount), $pieces-1);
- return array_merge(array($a),$b);
- }
- // Examples:
- $a = array(1,2,3,4,5,6,7,8,9,10);
- array_split($a, 2); // array(array(1,2,3,4,5), array(6,7,8,9,10))
- array_split($a, 3); // array(array(1,2,3,4), array(5,6,7), array
- (8,9,10))
- array_split($a, 4); // array(array(1,2,3), array(4,5,6), array(7,8),
- //开源代码phpfensi.com
- array(9,10))
- ?>