في PHP, كيف يمكنني العثور على القيمة المرتبطة مفتاح معين

StackOverflow https://stackoverflow.com/questions/187515

  •  06-07-2019
  •  | 
  •  

سؤال

لدي اثنين صفائف.واحد يحتوي على id=>count والآخر يحتوي على id=>name.أنا أحاول أن مجموعة أن name=>count.أي اقتراحات حول طريقة مباشرة لفعل هذا ؟

لقد بحثت في مجموعة وظائف في PHP دليل و لم نرى أي شيء وقفت كما أفعل ما أريد ، لذلك أعتقد أنني سوف تحتاج إلى مزيج من الوظائف ، ولكن أواجه صعوبة في الخروج مع شيء ليس معقد.

هل كانت مفيدة؟

المحلول

وشيء من هذا القبيل:

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;
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top