在php中,数组是最常用的数据类型之一。为了方便地操作数组,php提供了很多数组相关的内置函数,其中包括array_splice()函数。array_splice()函数的作用是将数组元素删除或者替换,并返回被删除元素的数组。
下面,让我们来详细了解一下array_splice()函数的使用方法。
使用方法
array_splice()函数的语法如下:
array_splice(array &$input, int $offset [, int $length [, mixed $replacement ]]): array
立即学习“PHP免费学习笔记(深入)”;
参数:
- &$input:必选,被操作的数组。
- $offset:必选,删除或替换元素的起始位置,如果是负数,则表示从数组末尾开始计算。
- $length:可选,删除元素的长度,默认为0,即不删除元素。
- $replacement:可选,替换的元素,可以是一个或多个元素,如果不指定,则默认为null。
返回值:
array_splice()函数返回被删除的元素构成的数组。
示例:
以下代码演示了如何使用array_splice()函数:
$arr = ['first', 'second', 'third', 'forth']; $removed = array_splice($arr, 1, 2, ['new', 'elems']); // 删除第二个和第三个元素,同时添加两个新元素 print_r($arr); // 输出 ['first', 'new', 'elems', 'forth'] print_r($removed); // 输出 ['second', 'third']
以上代码先定义了一个包含4个元素的数组$arr,接着使用array_splice()函数删除$array数组中的第二个和第三个元素,并替换成两个新的元素,最后输出删除后的数组和被删除的元素数组。
注意事项
在使用array_splice()函数时,有几个需要注意的地方:
- &$input参数是一个引用,在函数内部对其进行修改会反映到原始数组中。
- $length参数如果是负数,则表示删除数组末尾的元素。
- 如果不指定$replacement参数,则array_splice()函数只会删除元素,不会返回任何被删除的元素。
- $replacement参数可以是一个以数组形式给出的元素列表,也可以是一个数组。
- 在删除元素时,数组索引会被重新排序。











