從陣列中移除元素,並用新元素取代它:
<?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);?>array_splice() 函數從陣列中移除選定的元素,並用新元素取代它。函數也會傳回被移除元素的陣列。
提示:如果函數沒有移除任何元素(length=0),則替代陣列將從start 參數的位置插入(請參閱實例2)。
註:不保留替代數組中的鍵名。
array_splice( array,start,length,array )
參數 | 描述 |
---|---|
array | 必需。規定數組。 |
start | 必需。數值。規定刪除元素的開始位置。 0 = 第一個元素。 如果該值設定為正數,則從陣列中該值指定的偏移量開始移除。如果該值設定為負數,則從陣列末端倒數該值指定的偏移量開始移除。 -2 意指從陣列的倒數第二個元素開始。 |
length | 可選。數值。規定被移除的元素個數,也是被傳回數組的長度。 如果該值設定為正數,則移除該數量的元素。如果該值設定為負數,則移除從start 到陣列末端倒數length 為止中間所有的元素。如果該值未設置,則移除從start 參數設定的位置開始直到陣列末端的所有元素。 |
array | 可選。規定帶有要插入原始數組中元素的數組。如果只有一個元素,則可以設定為字串,不需要設定為陣列。 |
傳回值: | 傳回包含被提取元素的陣列。 |
---|---|
PHP 版本: | 4+ |
與本頁前面部分的實例相同,但是輸出傳回的陣列:
<?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));?>帶有設定為0 的length 參數:
<?php$a1=array("0"=>"red","1"=>"green");$a2=array("0"=>"purple","1"=>"orange") ;array_splice($a1,1,0,$a2);print_r($a1);?>