zl程序教程

您现在的位置是:首页 >  后端

当前栏目

php数组函数序列之array_splice()-在数组任意位置插入元素

PHP序列数组 函数 元素 插入 位置 Array
2023-06-13 09:14:31 时间
array_splice定义和用法

array_splice()函数与array_slice()函数类似,选择数组中的一系列元素,但不返回,而是删除它们并用其它值代替。

如果提供了第四个参数,则之前选中的那些元素将被第四个参数指定的数组取代。

最后生成的数组将会返回。

语法
array_splice(array,offset,length,array)参数描述
array必需。规定数组。
offset必需。数值。如果offset为正,则从输入数组中该值指定的偏移量开始移除。如果offset为负,则从输入数组末尾倒数该值指定的偏移量开始移除。
length可选。数值。如果省略该参数,则移除数组中从offset到结尾的所有部分。如果指定了length并且为正值,则移除这么多元素。如果指定了length且为负值,则移除从offset到数组末尾倒数length为止中间所有的元素。
array被移除的元素由此数组中的元素替代。如果没有移除任何值,则此数组中的元素将插入到指定位置。

提示和注释
提示:如果函数没有删除任何元素(length=0),则替代数组将从start参数的位置插入。(参见例子3)

注释:不保留替代数组中的键。

例子1
复制代码代码如下:

<?php
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,0,2,$a2);
print_r($a1);
?>

输出:

Array([0]=>Tiger[1]=>Lion[2]=>Horse[3]=>Bird)例子2
与例子1相同,但是输出返回的数组:
复制代码代码如下:

<?php
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
$a2=array(0=>"Tiger",1=>"Lion");
print_r(array_splice($a1,0,2,$a2));
?>

输出:

Array([0]=>Dog[1]=>Cat)例子3
length参数设置为0:
复制代码代码如下:
<?php
$a1=array(0=>"Dog",1=>"Cat");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,1,0,$a2);
print_r($a1);
?>

输出:

Array([0]=>Dog[1]=>Tiger[2]=>Lion[3]=>Cat)