@HbIXA

Как в инфоблоке выбрать 1 элемент по свойству элемента в bitrix?

Нужно выбрать 1 элемент значение поля которого = 5200014561. Код свойсвтва BILL. Что не так? При таком коде выводит все.

$dbData = CIBlockElement::getList(
        array(),
        [
        'IBLOCK_ID' => 230,
        'PROPERTY_BILL' => "5200014561",
        ],
        false, false,
        ['ID', 'IBLOCK_ID', 'PROPERTY_BILL']
    );

    while ($res = $dbData->GetNextElement()) {
        echo "<pre>";
        print_r($res->GetProperties());
        echo "</pre>";
    }
  • Вопрос задан
  • 1806 просмотров
Пригласить эксперта
Ответы на вопрос 4
@vardoLP
Ват ю сэй эбаут май мама?!
может так попробовать? 'PROPERTY_BILL_VALUE' => "5200014561",
Ответ написан
Комментировать
@HbIXA Автор вопроса
Пробовал уже, не помогло, хотя по докам именно как Вы описали должно работать.
Ответ написан
Комментировать
nester_87
@nester_87
Разработчик Битрикс
$arFilter = Array("IBLOCK_ID"=>230, "PROPERTY_BILL" => "5200014561");
$arSelect = Array('ID', 'IBLOCK_ID');
$res = CIBlockElement::GetList(Array("SORT"=>"ASC"), $arFilter, false, array(), $arSelect);

while($ob = $res->GetNextElement()){
  $arFields = $ob->GetFields();
  echo "<pre>";
  print_r($arFields);
  echo "</pre>";
}
Ответ написан
Комментировать
@ivashjke
Vue JS, React, React Native
у вас в инфоблоке только у одного элемента в свойстве стоит это значение или нет ? если нет то так и будет выводить все элементы
$sort = ['ID' => 'ASC'];
$filter = ['IBLOCK_ID' => 230, '=PROPERTY_BILL' => '5200014561']; //тут число еще а не строку попробуйте, хотя это не должно никак повлиять
$select = ['ID', 'IBLOCK_ID', 'PROPERTY_BILL'];
//если элементов несколько с таким значением - это выведет первый
$nTopCount = false;
//$nTopCount = ['nTopCount' => 1]; можно еще так ограничить
$el = CIBlockElement::GetList($sort, $filter, false, $nTopCount, $select)->Fetch();
var_dump($el);
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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