PHP создать ассоциативный массив на основе слияния двух массивов

Есть два массива. Необходимо для каждого элемента первого массива найти соответствующие значения во втором массиве и создать третий ассоциативный.

Первый $first = [ ['aaa', 74], ['bbb', 74], ['ccc', 55] ];

Второй $second = [ [74,'Petrov'], [55,'Ivanov'], [77,'Sidorov'] ];

Результат $result=['aaa'=>'Petrov', 'bbb'=>'Petrov', 'ccc'=>'Ivanov'];

Заранее спасибо за отклик.


Ответы (1 шт):

Автор решения: Виктор

Вариант реализации с циклами:

$first = [ ['aaa', 74], ['bbb', 74], ['ccc', 55] ];    
$second = [ [74,'Petrov'], [55,'Ivanov'], [77,'Sidorov'] ];
//$result=['aaa'=>'Petrov', 'bbb'=>'Petrov', 'ccc'=>'Ivanov'];
$list = [];
foreach($first as $item)
{
    foreach($second as $itemS)
    {
        if( $item[1] === $itemS[0] )
            $list[$item[0]]=$itemS[1];
    }
}

var_dump($list);
→ Ссылка