Например у нас есть множественные свойства у инфоблока. Надо вывести много элементов с этими свойствами. Получать эти свойства в цикле, конечно же, не вариант. А получать таким образом — вариант:
Получаем сами элементы:
$req = CIBlockElement::GetList( [], [ "IBLOCK_ID" => 3, "ACTIVE" => "Y" ], false, false, [ "ID", "IBLOCK_ID", "NAME" ] ); $items = []; while($res = $req->Fetch()){ $items[] = $res; }
Получаем эти свойства:
$arPropItems = array_flip(array_column($items, 'ID')); CIBlockElement::GetPropertyValuesArray( $arPropItems, 3, ['ID' => array_keys($arPropItems)], ['CODE' => ['PROP_NAME_1', 'PROP_NAME_2']] );
Свойства будут находиться в переменной $arPropItems