php下將多個(gè)數(shù)組合并成一個(gè)數(shù)組的方法與實(shí)例代碼
更新時(shí)間:2011年02月03日 15:08:47 作者:
php下將多個(gè)數(shù)組合并成一個(gè)數(shù)組的方法與實(shí)例代碼,需要的朋友可以參考下。
1.合并數(shù)組
array_merge()函數(shù)將數(shù)組合并到一起,返回一個(gè)聯(lián)合的數(shù)組。所得到的數(shù)組以第一個(gè)輸入數(shù)組參數(shù)開始,按后面數(shù)組參數(shù)出現(xiàn)的順序依次迫加。其形式為:
array array_merge (array array1 array2…,arrayN)
將一個(gè)或多個(gè)數(shù)組的單元合并起來,一個(gè)數(shù)組中的值附加在前一個(gè)數(shù)組的后面。返回作為結(jié)果的數(shù)組。
如果輸入的數(shù)組中有相同的字符串鍵名,則該鍵名后面的值將覆蓋前一個(gè)值。然而,如果數(shù)組包含數(shù)字鍵名,后面的值將不會(huì)覆蓋原來的值,而是附加到后面。
如果只給了一個(gè)數(shù)組并且該數(shù)組是數(shù)字索引的,則鍵名會(huì)以連續(xù)方式重新索引。
實(shí)例如下:
$face = array("J","Q","K","A");
$numbered = array("2","3","4","5","6","7","8","9");
$cards = array_merge($face, $numbered);
shuffle($cards);
print_r($cards);
這將返回如下所示的結(jié)果,運(yùn)行代碼:
Array ( [0] => A [1] => 4 [2] => 9 [3] => 3 [4] => K [5] => 7 [6] => 5 [7] => Q [8] => 6 [9] => 8 [10] => 2 [11] => J )
2.遞歸追加數(shù)組
array_merge_recursive()函數(shù)與array_merge()相同,可以將兩個(gè)或多個(gè)數(shù)組合并在一起,形成一個(gè)聯(lián)合的數(shù)組.兩者之間的區(qū)別在于,當(dāng)某個(gè)輸入數(shù)組中的某個(gè)鍵己經(jīng)存在于結(jié)果數(shù)組中時(shí)該函數(shù)會(huì)采取不同的處理方式.a(chǎn)rray_merge()會(huì)覆蓋前面存在的鍵/值對(duì),替換為當(dāng)前輸入數(shù)組中的鍵/值對(duì),而array_merge_recursive()將把兩個(gè)值合并在一起,形成一個(gè)新的數(shù)組,并以原有的鍵作為數(shù)組名。還有一個(gè)數(shù)組合并的形式,就是遞歸追加數(shù)組。其形式為:
view sourceprint?array array_merge_recursive( array key,array values )
示例如下:
$class1 = array("John" => 100, "James" => 85);
$class2 = array("Micky" => 78, "John" => 45);
$classScores = array_merge_recursive($class1, $class2);
print_r($classScores);
這將返回如下結(jié)果:
view sourceprint?Array ( [John] => Array ( [0] => 100 [1] => 45 ) [James] => 85 [Micky] => 78 )
3.連接兩個(gè)數(shù)組
array_combine()函數(shù)會(huì)得到一個(gè)新數(shù)組,它由一組提交的鍵和對(duì)應(yīng)的值組成。其形式為:
view sourceprint?array array_merge(array array1,array array2[…,array arrayN])
注意,兩個(gè)輸入數(shù)組必須大小相同,不能為空。示例如下:
$abbreviations = array("AL","AK","AZ","AR");
$states = array("Alabama","Alaska","Arizona","Arkansas");
$stateMap = array_combine($abbreviations,$states);
print_r($stateMap);
這會(huì)返回:
Array ( [AL] => Alabama [AK] => Alaska [AZ] => Arizona [AR] => Arkansas )
array_merge()函數(shù)將數(shù)組合并到一起,返回一個(gè)聯(lián)合的數(shù)組。所得到的數(shù)組以第一個(gè)輸入數(shù)組參數(shù)開始,按后面數(shù)組參數(shù)出現(xiàn)的順序依次迫加。其形式為:
復(fù)制代碼 代碼如下:
array array_merge (array array1 array2…,arrayN)
將一個(gè)或多個(gè)數(shù)組的單元合并起來,一個(gè)數(shù)組中的值附加在前一個(gè)數(shù)組的后面。返回作為結(jié)果的數(shù)組。
如果輸入的數(shù)組中有相同的字符串鍵名,則該鍵名后面的值將覆蓋前一個(gè)值。然而,如果數(shù)組包含數(shù)字鍵名,后面的值將不會(huì)覆蓋原來的值,而是附加到后面。
如果只給了一個(gè)數(shù)組并且該數(shù)組是數(shù)字索引的,則鍵名會(huì)以連續(xù)方式重新索引。
實(shí)例如下:
復(fù)制代碼 代碼如下:
$face = array("J","Q","K","A");
$numbered = array("2","3","4","5","6","7","8","9");
$cards = array_merge($face, $numbered);
shuffle($cards);
print_r($cards);
這將返回如下所示的結(jié)果,運(yùn)行代碼:
復(fù)制代碼 代碼如下:
Array ( [0] => A [1] => 4 [2] => 9 [3] => 3 [4] => K [5] => 7 [6] => 5 [7] => Q [8] => 6 [9] => 8 [10] => 2 [11] => J )
2.遞歸追加數(shù)組
array_merge_recursive()函數(shù)與array_merge()相同,可以將兩個(gè)或多個(gè)數(shù)組合并在一起,形成一個(gè)聯(lián)合的數(shù)組.兩者之間的區(qū)別在于,當(dāng)某個(gè)輸入數(shù)組中的某個(gè)鍵己經(jīng)存在于結(jié)果數(shù)組中時(shí)該函數(shù)會(huì)采取不同的處理方式.a(chǎn)rray_merge()會(huì)覆蓋前面存在的鍵/值對(duì),替換為當(dāng)前輸入數(shù)組中的鍵/值對(duì),而array_merge_recursive()將把兩個(gè)值合并在一起,形成一個(gè)新的數(shù)組,并以原有的鍵作為數(shù)組名。還有一個(gè)數(shù)組合并的形式,就是遞歸追加數(shù)組。其形式為:
view sourceprint?array array_merge_recursive( array key,array values )
示例如下:
復(fù)制代碼 代碼如下:
$class1 = array("John" => 100, "James" => 85);
$class2 = array("Micky" => 78, "John" => 45);
$classScores = array_merge_recursive($class1, $class2);
print_r($classScores);
這將返回如下結(jié)果:
view sourceprint?Array ( [John] => Array ( [0] => 100 [1] => 45 ) [James] => 85 [Micky] => 78 )
3.連接兩個(gè)數(shù)組
array_combine()函數(shù)會(huì)得到一個(gè)新數(shù)組,它由一組提交的鍵和對(duì)應(yīng)的值組成。其形式為:
view sourceprint?array array_merge(array array1,array array2[…,array arrayN])
注意,兩個(gè)輸入數(shù)組必須大小相同,不能為空。示例如下:
復(fù)制代碼 代碼如下:
$abbreviations = array("AL","AK","AZ","AR");
$states = array("Alabama","Alaska","Arizona","Arkansas");
$stateMap = array_combine($abbreviations,$states);
print_r($stateMap);
這會(huì)返回:
復(fù)制代碼 代碼如下:
Array ( [AL] => Alabama [AK] => Alaska [AZ] => Arizona [AR] => Arkansas )
您可能感興趣的文章:
- PHP中數(shù)組合并的兩種方法及區(qū)別介紹
- php 數(shù)組的合并、拆分、區(qū)別取值函數(shù)集
- php二維數(shù)組合并及去重復(fù)的方法
- php數(shù)組實(shí)現(xiàn)根據(jù)某個(gè)鍵值將相同鍵值合并生成新二維數(shù)組的方法
- PHP合并兩個(gè)或多個(gè)數(shù)組的方法
- php 操作數(shù)組(合并,拆分,追加,查找,刪除等)
- php通過array_merge()函數(shù)合并兩個(gè)數(shù)組的方法
- php數(shù)組合并array_merge()函數(shù)使用注意事項(xiàng)
- php合并數(shù)組并保留鍵值的實(shí)現(xiàn)方法
- php合并數(shù)組array_merge函數(shù)運(yùn)算符加號(hào)與的區(qū)別
- PHP實(shí)現(xiàn)數(shù)組根據(jù)某個(gè)字段進(jìn)行水平合并,橫向合并案例分析
相關(guān)文章
html靜態(tài)頁(yè)面調(diào)用php文件的方法
這篇文章主要介紹了html靜態(tài)頁(yè)面調(diào)用php文件的方法,在進(jìn)行應(yīng)用程序開發(fā)過程中非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-11-11用sql命令修改數(shù)據(jù)表中的一個(gè)字段為非空(not null)的語句
今天群里的一個(gè)朋友問如何用sql命令修改數(shù)據(jù)表中的一個(gè)字段為非空(not null),經(jīng)常測(cè)試下面的代碼即可。2010-06-06PHP中l(wèi)trim與rtrim去除左右空格及特殊字符實(shí)例
這篇文章主要介紹了PHP中l(wèi)trim與rtrim去除左右空格及特殊字符的用法,結(jié)合實(shí)例形式較為詳細(xì)的說明了ltrim與rtrim的定義,參數(shù)作用及去除左右空格與特殊字符的使用技巧,需要的朋友可以參考下2016-01-01實(shí)現(xiàn)php刪除鏈表中重復(fù)的結(jié)點(diǎn)
在本篇文章中,我們給大家?guī)砹岁P(guān)于php刪除鏈表中重復(fù)的結(jié)點(diǎn)的相關(guān)知識(shí)點(diǎn)內(nèi)容以及相關(guān)代碼,有興趣的朋友們參考下。2018-09-09