PHP array_splice() 函数

实例

从数组中移除元素,并用新元素取代它:

  1. <?php
  2. $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
  3. $a2=array("a"=>"purple","b"=>"orange");
  4. array_splice($a1,0,2,$a2);
  5. print_r($a1);
  6. ?>

定义和用法

array_splice() 函数从数组中移除选定的元素,并用新元素取代它。该函数也将返回包含被移除元素的数组。

提示:如果函数没有移除任何元素(length=0),则将从 start 参数的位置插入被替换数组(参见例子 2)。

注释:不保留被替换数组中的键名。

说明

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

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

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

语法

  1. array_splice(array,start,length,array)
参数 描述
array 必需。规定数组。
start 必需。数值。规定删除元素的开始位置。
  • 0 = 第一个元素。
  • 如果该值设置为正数,则从数组中该值指定的偏移量开始移除。
  • 如果该值设置为负数,则从数组末端倒数该值指定的偏移量开始移除。
  • -2 意味着从数组的倒数第二个元素开始。
  • length 可选。数值。规定被移除的元素个数,也是被返回数组的长度。
  • 如果该值设置为正数,则移除该数量的元素。
  • 如果该值设置为负数,则移除从 start 到数组末端倒数 length 为止中间所有的元素。
  • 如果该值未设置,则移除从 start 参数设置的位置开始直到数组末端的所有元素。
  • array 可选。规定带有要插入原始数组中元素的数组。 如果只有一个元素,则可以设置为字符串,不需要设置为数组。

    技术细节

    返回值: 返回由被提取元素组成的数组。
    PHP 版本: 4+

    更多实例

    例子 1

    与本页前面部分的实例相同,但是输出返回的数组:

    1. <?php
    2. $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
    3. $a2=array("a"=>"purple","b"=>"orange");
    4. print_r(array_splice($a1,0,2,$a2));
    5. ?>

    例子 2

    把 length 参数设置为 0:

    1. <?php
    2. $a1=array("0"=>"red","1"=>"green");
    3. $a2=array("0"=>"purple","1"=>"orange");
    4. array_splice($a1,1,0,$a2);
    5. print_r($a1);
    6. ?>