Недокументированная связка ElementTable и getEntity

С документацией нового ядра D7 довольно всё печально, это общеизвестный факт и битрикс разработчикам младшего и среднего звена не всегда очевидно как с этим ядром работать. Не хватает примеров в описании методов.

Есть очень хорошая недокументированная связка. С помощью ElementTable::getEntity создаем объект Query. В качестве параметра он принимает объект сущности, относительно которой мы строим запрос используя методы \Bitrix\Main\Entity\Query

            // создаем объект Query
            $query = new \Bitrix\Main\Entity\Query(Bitrix\Iblock\ElementTable::getEntity());
            $query

 //\Bitrix\Main\Entity\Query::setSelect- не статический метод составляет список полей для оператора SELECT.
                ->setSelect(array("ID", "PREVIEW_PICTURE", "DETAIL_PICTURE","SORT"))
//\Bitrix\Main\Entity\Query::setFilter - не статический метод устанавливает список фильтров для оператора WHERE.
                ->setFilter(array("IBLOCK_ID" => '2',"ACTIVE" => 'Y'))
//\Bitrix\Main\Entity\Query::setOrder - не статический метод устанавливает список полей для оператора ORDER BY.
                ->setOrder(array("ID" => "ASC"))
//\Bitrix\Main\Entity\Query::setLimit - не статический метод устанавливает лимит для оператора LIMIT n.
                ->setLimit(50);
//exec — Выполнить внешнюю программу - exec() выполняет команду command.
            $ob = $query->exec();
//\Bitrix\Main\DB\Result::fetch - не статический метод получает строку из результата запроса и возвращает её в ассоциативном массиве с конвертированными данными или возвращает false при пустых данных.
            while($res = $ob->fetch())             {             } //принт получаемых данных [0] => Array ( [ID] => 4 [PREVIEW_PICTURE] => [DETAIL_PICTURE] => 47 [SORT] => 810 )

Ещё статьи:

19.01.2021 Задача модуль регистрации участника акции
Задача по разработке модуля регистрации участника акции на сайт Битрикс. В модуле должны быть следующие поля: ID: 316

07.01.2021 Почему в битрикс автоматически отключаются пользователи
На сайте с определённой периодичностью происходила деактивация аккаунтов пользователей. Логин становился неактивным и зайти на сайт не получалось. ID: 314

07.01.2021 Ошибка сокетов
Бывает выскакивает такая ошибка в битрикс "Работа с сокетами    Ошибка! Не работает", "Замечание. Не удалось проверить из-за ошибки в работе с сокетами" ID: 315

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