您好,登錄后才能下訂單哦!
怎么在php中合并數(shù)組并保留鍵值?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
php合并數(shù)組,一般會使用array_merge方法。
array_merge — 合并一個或多個數(shù)組
array array_merge ( array $array1 [, array $... ] )
array_merge 將一個或多個數(shù)組的單元合并起來,一個數(shù)組中的值附加在前一個數(shù)組的后面,返回作為結果的數(shù)組。
如果輸入的數(shù)組中有相同的字符串鍵名,則該鍵名后面的值將覆蓋前一個值。然而,如果數(shù)組包含數(shù)字鍵名,后面的將不會覆蓋原來的值,而是附加到后面。
如果只給了一個數(shù)組并且該數(shù)組是數(shù)字索引的,則鍵名會以連續(xù)方式重新索引。
例子1,數(shù)組使用字符串鍵名,相同的鍵名會被后面的覆蓋
<?php $arr1 = array('name'=>'fdipzone'); $arr2 = array('name'=>'terry'); $result = array_merge($arr1, $arr2); print_r($result); ?>
輸出:
Array ( [name] => terry )
例子2,數(shù)組使用數(shù)字鍵名,鍵名相同不會覆蓋,且鍵名會重新索引
<?php $arr1 = array(0=>'fdipzone',1=>'terry'); $arr2 = array(0=>'php',1=>'python'); $result = array_merge($arr1, $arr2); print_r($result); ?>
輸出:
Array ( [0] => fdipzone [1] => terry [2] => php [3] => python )
因工作需要,需要將調(diào)查問卷的兩部分選擇題的答案合并一起,每部分答案為數(shù)組(key=>value),key為題號,value為答案,且兩部分的題號不存在重復。
使用array_merge合并兩部分答案
<?php $form_data1 = array(11=>'A',12=>'B',13=>'C',14=>'D'); $form_data2 = array(25=>'B',26=>'A',27=>'D',28=>'C'); $result = array_merge($form_data1, $form_data2); print_r($result); ?>
輸出:
Array ( [0] => A [1] => B [2] => C [3] => D [4] => B [5] => A [6] => D [7] => C )
使用array_merge合并,因為題號(key)是數(shù)字,所以鍵名會重新索引,導致題號不能保留。
合并數(shù)組并保留鍵值的方法:
<?php $form_data1 = array(11=>'A',12=>'B',13=>'C',14=>'D'); $form_data2 = array(25=>'B',26=>'A',27=>'D',28=>'C'); $result = $form_data1 + $form_data2; print_r($result); ?>
輸出:
Array ( [11] => A [12] => B [13] => C [14] => D [25] => B [26] => A [27] => D [28] => C )
關于怎么在php中合并數(shù)組并保留鍵值問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業(yè)資訊頻道了解更多相關知識。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。