我有兩個數組。一個包含id => count,另一個包含id =>名稱。我試圖產生一個名爲=> count的單個數組。任何建議在直接的方式做到這一點?在PHP中,我如何找到與特定鍵相關的值
我看過Array Functions in the PHP Manual並沒有看到任何突出顯示的功能,所以我猜測我需要功能的組合,但是我遇到了麻煩,沒有錯綜複雜。
我有兩個數組。一個包含id => count,另一個包含id =>名稱。我試圖產生一個名爲=> count的單個數組。任何建議在直接的方式做到這一點?在PHP中,我如何找到與特定鍵相關的值
我看過Array Functions in the PHP Manual並沒有看到任何突出顯示的功能,所以我猜測我需要功能的組合,但是我遇到了麻煩,沒有錯綜複雜。
喜歡的東西:
foreach($countA as $id => $count)
{
$newArray[$nameA[$id]] = $count;
}
這並假設鍵是在兩個陣列之間的對應關係,因爲你的要求是不明確的,否則。
使用array_combine ...
$countArray = array(0 => 1, 1 => 5);
$namesArray = array(0 => "Bob", 1 => "Alice");
$assocArray = array_combine($namesArray, $countArray);
編輯:這裏是在評論#2
$assocArray = array();
foreach($namesArray as $id => $name) {
$assocArray[$name] = (array_key_exists($id, $countArray)) ? $countArray[$id] : 0;
}
這假定儘管這兩個數組有順序的數字表達的新要求修訂的解決方案鍵。 – KernelM 2008-10-09 14:34:01