PHP

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 →