Может кто-нибудь узнать, есть ли еще более эффективный способ или единственная функция, которая позволит достичь ниже, без необходимости в цикле foreach? Я понимаю, что это будет практически без проблем производительности ниже, но я всегда ищу новые и, надеюсь, более эффективные способы кодирования.PHP манипулирует массивами без foreach
(Пуш первое значение элемента с ключом, самокаты второе значение элемента на новое значение ключа, убрать старые данные)
Входные
Array
(
[0] => Array
(
[supplier_id] => 1
[supplier_company] => Company Alpha
)
[1] => Array
(
[supplier_id] => 2
[supplier_company] => Company Beta
)
)
Функция
foreach ($suppliers as $key => $value) {
$new_array[$value['supplier_id']] = $value['supplier_company'];
}
Выходные
Array
(
[1] => Company Alpha
[2] => Company Beta
)
, так как вы не используете 'значение $ key' вы можете устранить' $ ключ => 'часть вашего цикла – cmorrissey
Кроме того, используйте' Еогеасп ($ поставщиков, как и $ значение) 'вместо этого. Как сказано в другом комментарии, это ускорит ваш код, потому что вы будете получать доступ к указателю вместо создания копии данных. После этого вы можете безопасно использовать 'unset ($ supplier)'. –