puzzled 发表于 2015-8-30 07:14:40

PHP 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 ( => Tiger => Lion => Horse => 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 ( => Dog => 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 ( => Dog => Tiger => Lion => Cat )
原文摘抄自 http://www.w3school.com.cn/php/func_array_splice.asp
页: [1]
查看完整版本: PHP array_splice函数实现数组任意位置插入