2015-08-31 5 views
-2

Здесь является значением массива выборок, которые возвращаются:Объединение нескольких массивов в PHP

Вот первый массив:

Array 1: 

    0 => 
     name => Test name value 
     desrciption => Test description value 
     category => Test category value 
     code_1 => IGEF001 
     code_2 => IGGF001 

    1 => 
     name => Test name value 
     desrciption => Test description value 
     category => Test category value 
     code_1 => IGEF003 
     code_2 => IGGF003 

    2 => 
     name => Test name value 
     desrciption => Test description value 
     category => Test category value 
     code_1 => IGEF004 
     code_2 => IGGF004 

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

Array 2: 

0 => 
    return_code => IGEF003 

1 => 
    return_code => IGGF003 

2 => 
    return_code => IGGF004 

3 => 
    return_code => IGEF004 

4 => 
    return_code => IGGF001 

5 => 
    return_code => IGEF001 

Здесь что я пытаюсь выполнить:

0 => 
    name => Test name value 
    desrciption => Test description value 
    category => Test category value 
    code_1 => IGEF001 
    code_2 => IGGF001 
    select_code_1 => IGEF001 <-- Value coming from the second array 
    select_code_2 => IGGF001 <-- Value coming from the second array 


1 => 
    name => Test name value 
    desrciption => Test description value 
    category => Test category value 
    code_1 => IGEF003 
    code_2 => IGGF003 
    select_code_1 => IGEF003 <-- Value coming from the second array 
    select_code_2 => IGGF003 <-- Value coming from the second array 

2 => 
    name => Test name value 
    desrciption => Test description value 
    category => Test category value 
    code_1 => IGEF004 
    code_2 => IGGF004 
    select_code_1 => IGEF004 <-- Value coming from the second array 
    select_code_2 => IGGF004 <-- Value coming from the second array 

Надеюсь, этого достаточно, сообщите мне, если вам нужно больше.

+0

Вы добавляете select_code, сколько их во втором массиве? – splash58

+0

это нереальная структура - '0 => return_code => IGEF003' – splash58

ответ

1

Ну, если я правильно понял ваш вопрос, вы хотите найти соответствующие записи во втором массиве и добавить их в первый массив. Для того чтобы этот пример был простым, я предполагаю, что соответствующие записи всегда существуют. Если это не так, вам нужно добавить if с array_key_exists() или что-то в этом роде.

$result = array(); 
foreach ($array1 as $key => $value) { 
    $result = $value; 
    $result['select_code'] = $array2[$key]['return_code']; 
} 

То, что я не мог понять, это то, где должна быть найдена вторая запись «select_code» в результате. Насколько я могу судить, единственный способ сопоставить записи в первом с элементами во втором массиве. Если вы предоставите больше информации о характере ваших данных, я отредактирую свой ответ.

+0

Ну, в основном данные поступают из двух отдельных таблиц. Я пытаюсь минимизировать использование базы данных. Я дам вашему примеру выстрел .. Спасибо .. –

0

Ничего, что нашел решение. То, что я сделал, я вызвал запрос внутри цикла for для первого массива и связал значения. Поэтому вместо того, чтобы иметь два отдельных массива, я решил создать единый массив, и это сделало трюк.

Благодарим за помощь.

Смежные вопросы