PHP array_slice 数组函数
-
定义和用法
array_slice - 从数组中取出一段 -
版本支持
PHP4 PHP5 PHP7 支持 支持 支持 V5.2.4 length 参数默认值改成 NULL。 现在 length 为 NULL 时,意思是说使用 array 的长度。 之前的版本里, NULL 的 length 的意思是长度为零(啥也不返回)。
V5.0.2 增加了可选参数 preserve_keys 。
-
语法
array_slice (array $array , int $offset [, int $length = NULL [, bool $preserve_keys = false ]])
array_slice() 返回根据 offset 和 length 参数所指定的 array 数组中的一段序列。 -
参数
参数 必需的 描述 array 是 输入的数组。 offset 是 如果 offset 非负,则序列将从 array 中的此偏移量开始。如果 offset 为负,则序列将从 array 中距离末端这么远的地方开始。 length 否 如果给出了 length 并且为正,则序列中将具有这么多的单元。如果给出了 length 并且为负,则序列将终止在距离数组末端这么远的地方。如果省略,则序列将从 offset 开始一直到 array 的末端。 preserve_keys 否 注意 array_slice() 默认会重新排序并重置数组的数字索引。你可以通过将 preserve_keys 设为 TRUE 来改变此行为。 -
返回值
返回其中一段。 如果 offset 参数大于 array 尺寸,就会返回空的 array。 -
示例
尝试一下<?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 "d" $output = array_slice($input, 0, 3); // returns "a", "b", and "c" // note the differences in the array keys print_r(array_slice($input, 2, -1)); print '<br/>'; print_r(array_slice($input, 2, -1, true)); ?>
-