Значение ключа многомерного массива из одного массива в другой массив в php

#php #arrays #codeigniter #multidimensional-array

#php #массивы #codeigniter #многомерный массив

Вопрос:

У меня есть два массива.

Первый массив:

 Array
(
[0] => Array
    (
        [0] => 17, karol Bagh
        [1] => Noida
        [2] => Delhi
        [3] => India
        [4] => 426001
    )

[1] => Array
    (
        [0] => 117, Srinagar
        [1] => Gaziabad
        [2] => Delhi
        [3] => India
        [4] => 426001
    )

[2] => Array
    (
        [0] => 109,Bangalore
        [1] => Bangalore
        [2] => Karnataka
        [3] => India
        [4] => 560058
    )

[3] => Array
    (
        [0] => Jeevan Shree Building, Ground Floor,S.No.1109, Ganeshkhind Road, Shivajinagar, Near Pune Central
        [1] => Pune
        [2] => Maharashtra
        [3] => India
        [4] => 411005
    )

)
  

Второй массив:

 Array
(
[0] => Array
    (
        [LatitudeLongitude] => 28.6192015, 77.2791726
    )

[1] => Array
    (
        [LatitudeLongitude] => 28.5615316, 77.268723
    )

[2] => Array
    (
        [LatitudeLongitude] => 13.0525001, 77.4869828
    )

[3] => Array
    (
        [LatitudeLongitude] => 18.5204303, 73.8567437
    )

)
  

Мне нужен массив, подобный комбинации этих двух массивов в php :

 Array
(
[0] => Array
    (
        [0] => 17, karol Bagh
        [1] => Noida
        [2] => Delhi
        [3] => India
        [4] => 426001
        **[5] => 28.6192015, 77.2791726**
    )

[1] => Array
    (
        [0] => 117, Srinagar
        [1] => Gaziabad
        [2] => Delhi
        [3] => India
        [4] => 426001
        **[5] => 28.5615316, 77.268723**
    )

[2] => Array
    (
        [0] => 109,Bangalore
        [1] => Bangalore
        [2] => Karnataka
        [3] => India
        [4] => 560058
        **[5] => 13.0525001, 77.4869828**
    )

[3] => Array
    (
        [0] => Jeevan Shree Building, Ground Floor,S.No.1109, Ganeshkhind Road, Shivajinagar, Near Pune Central
        [1] => Pune
        [2] => Maharashtra
        [3] => India
        [4] => 411005
        **[5] => 18.5204303, 73.8567437**
    )

)
  

Как это сделать?

Комментарии:

1. Я сделал это с помощью: $index = 0; для($index=0; $index<$id;$index ){ $propertyList[$index][‘latitutelongitute’] = $latlongarray[$index]; }

Ответ №1:

 $index = 0;

foreach ($array2 as $entry) {
    array_push($array1[$index], $entry['LatitudeLongitude']);
    $index  ;
}
  

Этот фрагмент перебирает 2-й массив, в котором вы храните данные lat / lng. Мы берем поле [‘LatitudeLongitude’] каждой записи во 2-м массиве и помещаем его во вложенный массив, который существует с тем же индексом в первом массиве. Увеличенная переменная действует как ссылка на нашу позицию в обоих массивах.

Поэтому всегда у нас есть $2ndarray[0]['LatitudeLongitude'] -> $1starray[0] , $2ndarray[1]['LatitudeLongitude'] -> $1starray[1] , …. и так далее (где $1starray[$i] сам массив).

Ответ №2:

Вы можете сделать следующее:

 foreach ($array1 as $key => $a) {
    $array1[$key][] = $array2[$key]['LatitudeLongitude'];
}
  

Таким образом, вы будете перебирать весь первый массив, получая LatittudeLongitude индекс из правильного ключа во втором массиве.

Надеюсь, я был полезен