Всем доброго времени суток!
Раньше реализовывал выборку элементов из инфоблока, отвечающих списку ID таким образом:
Вопрос: можно ли реализовать ту же задачу, передав в фильтр массив ID-шек? Чтобы не прогонять весь предыдущий код столько раз, сколько у меня различных ID, по которым я ищу, а сделать что-то наподобие такого:
Читал, что передавать массив в фильтр можно таким образом: $arFilter = array("ID" => Array(1,4,509,10))
Так мы сделать можем, когда точно знаем количество и значения ID, а когда не знаем, как поступить?
Раньше реализовывал выборку элементов из инфоблока, отвечающих списку ID таким образом:
| Код |
|---|
<?foreach($arResult[PROPERTIES][producer][VALUE] as $producer):?>
<?
$arSelect = Array("ID","NAME","DETAIL_PAGE_URL");
$arFilter = Array("IBLOCK_ID"=>14, "ID"=> $producer, "ACTIVE"=>"Y",);
$res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>4), $arSelect);
while($ob = $res->GetNextElement())
{
$arFields = $ob->GetFields();
echo $arFields["NAME"]."<br/>";
}
?>
<?endforeach;?> |
Вопрос: можно ли реализовать ту же задачу, передав в фильтр массив ID-шек? Чтобы не прогонять весь предыдущий код столько раз, сколько у меня различных ID, по которым я ищу, а сделать что-то наподобие такого:
| Код |
|---|
<?foreach($arResult[PROPERTIES][producer][VALUE] as $producer):?>
<?$arProducer[] = $producer;?>
<?endforeach;?>
....
$arFilter = Array("IBLOCK_ID"=>14, "ID"=>Array($arProducer), "ACTIVE"=>"Y",);
|
Читал, что передавать массив в фильтр можно таким образом: $arFilter = array("ID" => Array(1,4,509,10))
Так мы сделать можем, когда точно знаем количество и значения ID, а когда не знаем, как поступить?