Zheleznov
@Zheleznov

Как добавить значения из одного массива в другой?

Привет всем
Помогите пожалуйста с решением данной задачи

Есть прайс 1С, в котором - Артикул, название, цена
Нужно добавить описание

На сайте прайс загружается, и создается массив такого вида:

$array = [

	$arrayOne = [
	
		['name'	=>	'Товар 1',
		 'sku'	=>	'11',
		 'price'	=>	'100 руб.',
		]
	
	],

	$arrayTwo = [
	
		['name'	=>	'Товар 2',
		 'sku'	=>	'22',
		 'price'	=>	'200 руб.',
		]
	
	],
	
	$arrayThree = [
	
		['name'	=>	'Товар 3',
		 'sku'	=>	'33',
		 'price'	=>	'300 руб.',
		]
	
	],
]


Ниже массив описаний к товарам, по SKU

$arrayText = [
    ['11' => 'Text 1'],
    ['22' => 'Text 2'], 
    ['33' => 'Text 3'], 
];


Подскажите пожалуйста

Как сделать сравнение на наличие в прайсе данного товара по SKU ?
И если он есть, добавить описание нужному товару?

Чтобы стало так

$array = [

	$arrayOne = [
	
		['name'		=>	'Товар 3',
		 'sku'		=>	'33',
		 'price'	        =>	'300 руб.',
		 'desc'		=>	'Text 3',
		]
	
	],

	...
]
  • Вопрос задан
  • 123 просмотра
Решения вопроса 1
@nektopme
Привет!

function addDescriptionToProducts($array, $arrayText) {
  foreach ($array as &$arr) {
    foreach ($arr as &$product) {
      foreach ($arrayText as $text) {
        if (isset($text[$product['sku']])) {
          $product['desc'] = $text[$product['sku']];
          break;
        }
      }
    }
  }
  return $array;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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