PHP - объединить два массива (одинаковой длины) в один ассоциативный?
-
05-07-2019 - |
Вопрос
довольно простой вопрос на самом деле ..
Возможно ли в 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"
}
Я надеюсь, что это может помочь кому-то:)