4種追加函數(shù):1、array_push(),語法“array_push(數(shù)組,元素值列表..)”;2、array_merge(),語法“array_merge(數(shù)組1,數(shù)組2…)”;3、array_merge_recursive()等。
本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版、DELL G3電腦
所謂追加數(shù)組元素,就是在數(shù)組的尾部添加元素。PHP內(nèi)置了多種追加數(shù)組元素的函數(shù),下面介紹一下。
1、array_push()函數(shù)
array_push()函數(shù)可以在數(shù)組尾部插入一個(gè)或多個(gè)元素(鍵值),語法如下:
array_push($array,$value1,$value2...)
示例:
<?php $arr=array(1,2,3); array_push($arr,8,"9",3.14); var_dump($arr); ?>
2、array_merge()函數(shù)
array_merge()函數(shù)用于把一個(gè)或多個(gè)數(shù)組合并為一個(gè)數(shù)組
array_merge(array1,array2,array3...)
-
會將array2,array3…的值存入array1中。
注:當(dāng)某個(gè)輸入數(shù)組中的某個(gè)鍵己經(jīng)存在于結(jié)果數(shù)組中時(shí),array_merge()會覆蓋前面存在的鍵/值對,替換為當(dāng)前輸入數(shù)組中的鍵/值對。
示例:
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20); $result =array_merge($arr,array(2,3,4)) ; var_dump($result); ?>
3、array_merge_recursive()函數(shù)
array_merge_recursive()函數(shù)與上面的array_merge()相同,都可以將兩個(gè)或多個(gè)數(shù)組合并在一起,形成一個(gè)聯(lián)合的數(shù)組。
區(qū)別在于:存在相同鍵名時(shí),array_merge()會覆蓋前面存在的鍵/值對,而array_merge_recursive()將把兩個(gè)值合并在一起,形成一個(gè)新的數(shù)組,并以原有的鍵作為數(shù)組名,還有一個(gè)數(shù)組合并的形式,就是遞歸追加數(shù)組。
語法:
array_merge_recursive(array array1,array array2[…,array arrayN])
示例:
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20); $result =array_merge_recursive($arr,array(2,3,4,8)) ; var_dump($result); ?>
4、array_splice()函數(shù)
array_splice()函數(shù)是一個(gè)強(qiáng)大的函數(shù),可以用來刪除數(shù)組元素、替換數(shù)組元素,也能用來插入數(shù)組元素(只需要將參數(shù)$length的設(shè)置為0即可)。語法:
array_splice($array,$start,$length,$value)
-
當(dāng)$length=0,那么參數(shù)$start就可指定開始插入的位置(下標(biāo))
-
參數(shù)$value就可指定插入值(如果是多個(gè)值就需要設(shè)置為數(shù)組)。
-
當(dāng)將$start的值設(shè)置為“數(shù)組長度值”,即count($arr)即可在數(shù)組末尾插入元素。
<?php $arr=array(1,2,3); array_splice($arr,count($arr),0,"1"); var_dump($arr); array_splice($arr,count($arr),0,array(25,"3")); var_dump($arr); ?>
推薦學(xué)習(xí):《PHP視頻教程》