array_slice
array_slice
(PHP 4, PHP 5, PHP 7)
array_slice - 提取数组的一部分
描述
array array_slice ( array $array , int $offset [, int $length = NULL [, bool $preserve_keys = false ]] )
array_slice()返回由偏移量和长度参数指定的数组数组中元素的序列。
参数
array
输入数组。
offset
如果偏移量是非负数,则序列将从数组中的偏移量开始。 如果偏移量为负数,则序列将从数组末尾开始。
length
如果给出长度并且是正数,那么该序列将具有多达其中的许多元素。 如果数组的长度比这个长度短,那么只有可用的数组元素会出现。 如果给出长度并且是负数,那么该序列将停止阵列末尾的许多元素。 如果省略,则序列将包含从偏移量到数组末尾的所有内容。
preserve_keys
请注意,array_slice()将默认重新排序和重置数字数组索引。 您可以通过将preserve_keys设置为TRUE来更改此行为。
返回值
返回一部分。如果偏移量大于数组的大小,则返回一个空数组。
更新日志
版 | 描述 |
---|---|
5.2.4 | 长度参数的默认值已更改为NULL。NULL长度现在告诉函数使用数组的长度。在此版本之前,NULL长度表示长度为零(不会返回任何内容)。 |
5.0.2 | 添加了可选的preserve_keys参数。 |
例子
示例#1 array_slice()示例
<?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_r(array_slice($input, 2, -1, true)
?>
上面的例子将输出:
Array
(
[0] => c
[1] => d
)
Array
(
[2] => c
[3] => d
)
扩展内容
- array_splice() - 删除数组的一部分,并用其他名称替换它
- unset() - 取消设置给定的变量
- array_chunk() - 将数组拆分为块
← array_shift
array_splice →