Задать вопрос

Положить массив в другой массив?

Знатоки подскажите, чет я туплю...
Нужно создать массив вида:
Array
(
    [0] => Array
        (
            [brand] => LADA
            [model] => 21901
        )
)

Суть в том, что я ищу запись в другом массиве и формирую новый массив:
//Ищем бренд...
$search = array_search('Марка', $articles[0])+1;
$ADDnewArray = [
	"brand" => $articles[0][$search],
];
array_push($newArray, $ADDnewArray);
unset($search);
unset($ADDnewArray);

И так каждую строку. В том виде что сейчас массив получается в таком виде:
Array
(
    [0] => Array
        (
            [brand] => LADA
        )
    [1] => Array
        (
            [model] => 21901
        )
)

Как сделать так, как описано выше? Спасибо...
P.S. Пробовал и так: array_push($newArray[0], $ADDnewArray);

UPD: Исходный примерный массив
Array
(
    [0] => Array
        (
            [0] => Введите vin-код
            [1] =>                                    
            [2] => 
            [3] => 
            [4] => Идентификационный номер
            [5] => XTA2*******************
            [6] => Марка
            [7] => LADA
            [8] => Модель
            [9] => 21901
            [10] => Тип транспортного средства
            [11] => легковой автомобиль
            [12] => Объем двигателя, куб.см.
            [13] => 1100-1800
            [14] => Модельный год
            [15] => 1985
            [16] => Рынок сбыта
            [17] => внутренний рынок
            [18] => Страна происхождения
            [19] => Россия
            [20] => Серийный номер
            [21] => 325847
            [22] => 
            [23] => 
            [24] => 
            [25] => 
            [26] => 
            [27] => 
            [28] => 
            [29] => 
            [30] => 
            [31] => 
            [32] => 
            [33] => 
            [34] => 
            [35] => 
            [36] => 
            [37] => 
            [38] => 
            [39] => 
            [40] => 
        )

)
  • Вопрос задан
  • 158 просмотров
Подписаться 1 Оценить 2 комментария
Решения вопроса 1
goodwin332
@goodwin332
<?php

$orig = [
	[
		0 => 'Введите vin-код',
        4 => 'Идентификационный номер',
        5 => 'XTA2*******************',
        6 => 'Марка',
        7 => 'LADA',
        8 => 'Модель',
        9 => '21901',
        10 => 'Тип транспортного средства',
        11 => 'легковой автомобиль',
        12 => 'Объем двигателя, куб.см.',
        13 => '1100-1800',
        14 => 'Модельный год',
        15 => '1985',
        16 => 'Рынок сбыта',
        17 => 'внутренний рынок',
        18 => 'Страна происхождения',
        19 => 'Россия',
        20 => 'Серийный номер',
        21 => '325847',
	]
];

$need = [
  'brand' => 'Марка',
  'model' => 'Модель'
];

$result = [];

foreach ($orig as $arr) {
	$record = [];
	foreach ($need as $keyNew => $keyOld) {
		if (in_array($keyOld, $arr)) {
			$index = array_search($keyOld, $arr);
			$record[$keyNew] = $arr[intval($index)+1];
		}
	}
	if (!empty($record)) {
		$result[] = $record;
	}
}

var_dump($result);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы