Я пытаюсь получить два массива массивов (я думаю, что это означает, что они многомерные) объединены/объединены общим значением. Другими словами, аналогично оператору JOIN в SQL. Есть ли конкретный, эффективный способ сделать это?Каков наиболее эффективный способ объединения этого массива массивов в PHP?
Попытка объединить эти два:
Array
(
[0] => Array
(
[0] => 5
[1] => alice
[2] => car
)
[1] => Array
(
[0] => 3
[1] => bob
[2] => truck
)
[2] => Array
(
[0] => 5
[1] => charlie
[2] => bike
)
)
Array
(
[0] => Array
(
[0] => 5
[1] => alice
[2] => Vancouver
)
[1] => Array
(
[0] => 3
[1] => bob
[2] => Toronto
)
[2] => Array
(
[0] => 5
[1] => charlie
[2] => Portland
)
)
Для производства:
Array
(
[0] => Array
(
[0] => 5
[1] => alice
[2] => car
[3] => Vancouver
)
[1] => Array
(
[0] => 3
[1] => bob
[2] => truck
[3] => Toronto
)
[2] => Array
(
[0] => 5
[1] => charlie
[2] => bike
[3] => Portland
)
)
Вы хотите «присоединиться к id»? может быть лучше всего, чтобы этот идентификатор был индексом массива. –
также, я предпочитаю, чтобы второй уровень был связан, чтобы не смешивать вещи –
согласен с @eicto - было бы намного проще получить хорошее решение, если бы у вас был массив с именованными ключами, а не [ 1], [2], [3]. Фактически, я бы сказал, что это необходимо для того, чтобы ваша система была надежной. Потому что кто скажет, что не может быть города под названием «Велосипед» или человека под названием «Грузовик»? И если у вас есть какая-либо возможность двусмысленности в данных, то вы не можете использовать ответы, содержащие «array_unique» или «array_merge» и т. Д. – Spudley