PHP array_splice() 函数
PHP array_splice() 函数从数组中移除选定的元素,并用新元素取代它,函数也将返回被移除元素的数组
函数原型
array_splice( array,start,length,array )
如果函数没有移除任何元素(length=0),则替代数组将从 start 参数的位置插入
不保留替代数组中的键名
参数
参数 | 描述 |
---|---|
array | 必需。规定数组 |
start | 必需。数值。规定删除元素的开始位置 0 = 第一个元素 如果该值设置为正数,则从数组中该值指定的偏移量开始移除 如果该值设置为负数,则从数组末端倒数该值指定的偏移量开始移除 -2 意味着从数组的倒数第二个元素开始 |
length | 可选。数值。规定被移除的元素个数,也是被返回数组的长度 如果该值设置为正数,则移除该数量的元素 如果该值设置为负数,则移除从 start 到数组末端倒数 length 为止中间所有的元素 如果该值未设置,则移除从 start 参数设置的位置开始直到数组末端的所有元素 |
array | 可选。规定带有要插入原始数组中元素的数组 如果只有一个元素,则可以设置为字符串,不需要设置为数组 |
返回值
返回包含被提取元素的数组
范例
从数组中移除元素,并用新元素取代它
<?php $a1 = array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2 = array("a"=>"purple","b"=>"orange"); array_splice($a1,0,2,$a2); print_r($a1);
运行以上 PHP 范例,输出结果如下
Array ( [0] => purple [1] => orange [c] => blue [d] => yellow )
范例 2
与本页前面部分的实例相同,但是输出返回的数组
<?php $a1 = array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2 = array("a"=>"purple","b"=>"orange"); print_r(array_splice($a1,0,2,$a2));
运行以上 PHP 范例,输出结果如下
Array ( [a] => red [b] => green )
范例 3
带有设置为 0 的 length 参数
<?php $a1 = array("0"=>"red","1"=>"green"); $a2 = array("0"=>"purple","1"=>"orange"); array_splice($a1,1,0,$a2); print_r($a1);
运行以上 PHP 范例,输出结果如下
Array ( [0] => red [1] => purple [2] => orange [3] => green )