довольно простой вопрос фактически ..
возможно ли в PHP комбинировать два отдельных массива одинаковой длины с одним ассоциативным массивом, где значения первого массива используются как ключи в ассоциативном массиве?
Я мог бы, конечно, сделать это, но я ищу другую (встроенную) функцию или более эффективное решение ..?
function Combine($array1, $array2) { if(count($array1) == count($array2)) { $assArray = array(); for($i=0;$i<count($array1);$i++) { $assArray[$array1[$i]] = $array2[$i]; } return $assArray; } }
array_combine($keys, $values)
PS: Нажмите на мой ответ! Это также ссылка!
вам понадобится array_combine .
<?php $a = array('green', 'red', 'yellow'); $b = array('avocado', 'apple', 'banana'); $c = array_combine($a, $b); print_r($c); ?>
Там уже есть функция array_combine
:
$combined = array_combine($keys, $values);
привет всем, я покажу вам, как объединить 2 массива в один массив
у нас есть 2 массива, и я сделаю из них один массив
$data_key = array('key1','key2'); $data_value = array('val1','val2');
позволяет объявить основной массив
$main_array = array();
теперь давайте заполним его двумя массивами
foreach ($data_key as $i => $key) { $main_array[$key] = $data_value[$i]; }
теперь посмотрим результат с помощью var_dump($main_array);
array(2) { ["key1"]=> string(4) "val1" ["key2"]=> string(4) "val2" }
я надеюсь, что это может помочь кому-то 🙂