PHP, nasıl bir spesifik anahtar ile ilişkili değer bulurum

2 Cevap php

Ben iki dizi var. Bir id => sayılmasını içeren ve diğer id => adını içerir. Ben isim => sayısı tek bir dizi üretmeye çalışıyorum. Bunu yapmak için basit bir şekilde herhangi bir öneriniz?

Ben Array Functions in the PHP Manual baktım ve ne istediğinizi yapıyor gibi çarpıyordu bir şey görmedim, bu yüzden ben fonksiyonları bir arada gerekir tahmin ediyorum, ama ben ile geliyor sorun yaşıyorum kıvrık değil bir şey.

2 Cevap

Gibi bir şey:

foreach($countA as $id => $count)
{
    $newArray[$nameA[$id]] = $count;
}

Bu gereksinimleri, aksi takdirde belirsiz olduğundan anahtarlar, iki dizi arasındaki yazışmalar olduğunu kabul etmez.

Kullan array_combine ...

$countArray = array(0 => 1, 1 => 5);
$namesArray = array(0 => "Bob", 1 => "Alice");

$assocArray = array_combine($namesArray, $countArray);

Edit: İşte comment # 2 ifade yeni ihtiyaçlar için bir revize çözümdür

$assocArray = array();
foreach($namesArray as $id => $name) {
    $assocArray[$name] = (array_key_exists($id, $countArray)) ? $countArray[$id] : 0;
}