Если кто не знает, то все свойства элемента ввиде массива можно получить так:
$res = CIBlockElement::GetList(Array(), Array(«IBLOCK_ID»=>2, «ID»=>10));
if ($ob = $res->GetNextElement()){
$arFields = $ob->GetFields(); // поля элемента
$arProps = $ob->GetProperties(); // свойства элемента
}
Можно упростить жизнь и написать простую функцию, поместим её в init.php
function GetValueProp($id_tov, $iblock_id, $name_prop){ $arFilter = Array("IBLOCK_ID"=> $iblock_id , "ID"=>$id_tov); $res = CIBlockElement::GetList(Array(), $arFilter2); if ($ob = $res->GetNextElement()){ $arFields = $ob->GetFields(); // поля элемента $arProps = $ob->GetProperties(); // свойства элемента $prop_value = $arProps; // массив всех свойств if(isset($name_prop)) $prop_value = $arProps[$name_prop]['VALUE']; } return $prop_value;} |
где
$id_tov — ID элемента,
$iblock_id — ID инфоблока,
$name_prop — символьный код свойства
Если указать, только $id_tov и $iblock_id, то получить массив со всеми свойствами элемента.
Если указать еще в $name_prop, то получим только значение нужного свойства элемента.
Пример использования:
GetValueProp(2, 10, 'DLINA'); |
Об авторе