Получение значений свойства инфоблока битрикс

Получение значений свойства инфоблока битрикс

21.08.2018

Была у меня задача получить значения свойства инфоблока, который обновлялся из 1С, с целью вывода данных в поле формы заявки.

Первый вариант, который гуляет в сети, с использованием GetList с группировкой по свойству дал частичный результат

CModule::IncludeModule(‘iblock’);
$ID=2;
$arPropValues = array();$dbItems = CIBlockElement::GetList(array(), array(‘IBLOCK_ID’ => $ID), array(‘PROPERTY_MATERIAL’));
while($arItem = $dbItems->GetNext(true, false)) {
$arPropValues[] = $arItem[‘PROPERTY_MATERIAL_VALUE’];

Результат на примере свойства каталога демо сайта

Array
(
[0] =>
[1] => 95% хлопок, 5% эластан
[2] => искусственные материалы
[3] => кожа
[4] => полиуретан
[5] => резина/кожа
[6] => текстиль/полимер
[7] => трикотаж
[8] => хлопок
[9] => шелк
)

Но тут в итоге получается, что первый ключ массива пустой, так как не все элементы инфоблока содержат заполненные значения.

Во втором варианте я добавил фильтрацию, чтобы выбрать все заполненные значения свойства инфоблока (скачать пример)

$arResult = array();
$arrayFilter = array(‘IBLOCK_ID’ => 2, array(«!PROPERTY_MATERIAL»=>false));
array(«!=PROPERTY_MATERIAL»=>false));
$dbItems = CIBlockElement::GetList(array(«PROPERTY_MATERIAL»=>»ASC»), $arrayFilter, array(«PROPERTY_MATERIAL»));
while($arItem = $dbItems->GetNext(true, false)) {
$arResult[] = $arItem;
}

Итог:
Значения на выходе получаются сгруппирированы и без пустых ключей, что я и применил в такого плане веб формы заявки


Ещё статьи:

13.08.2020 Получить id элемента привязки к пользователю битрикс
Получить id элемента, который добавлен в свойство привязки к пользователю битрикс ID: 250

22.06.2020 Дубли внешнего кода не грузятся при импорте Битрикс
При копировании штатными средствами элементов (кнопка копировать) обнаружил такой момент, что при XML экспорте и последующим XML импорте не вс... ID: 243

17.06.2020 Журнал отправки почты на сайте Битрикс
В Битриксе есть инструменты для получения данных отправки почты на сайте. Рассмотрим, что в итоге есть. ID: 242

Новые статьи в блоге:

20.08.2020 Недокументированная связка ElementTable и getEntity
С помощью ElementTable::getEntity создаем объект Query. В качестве параметра он принимает объект сущности, относительно которой мы строим запрос испол... ID: 254

19.08.2020 Миф о сложности поиска специалиста Битрикс
Существует миф о сложности поиска специалиста Битрикс. Но как выясняется проблема поиска специалиста касается любой системы, фреймворков. Цитата: В св... ID: 253

15.08.2020 Получить ID раздела по пользовательскому полю
Как получить ID раздела по пользовательскому полю другого раздела ID: 252

Возврат к списку

© 2015-2020 Web админ
Связаться по WhatsApp