Cистема управления сайтом

DJEMForeach

С помощью класса DJEMForeach можно делать выборки по документам DJEM. По принципу действия класс во многом похож на djemscript-оператор foreach — можно указать путь к документам, условие выборки, поставить ограничение на количество документов и установить принцип сортировки.

На заметку

Все методы класса, определяющие параметры выборки, возвращают указатель на объект класса, что позволяет объединять параметры в один цепочечный запрос.

Например, чтобы вывести заголовок 7 последних по дате публикации новостей, у которых установлен флажок main (выводить на главную страницу), мы могли бы написать следующий код:

$query R('DJEM')->GetForeach();
$query->Path('main.rus.news.$')
           ->
Where('main="on"')
           ->
Sort('-_publish_time')
           ->
Limit(7);

foreach (
$query as $item) {
     print 
$item->_name;
}
На заметку

DJEMForeach реализует интерфейс Iterator, что позволяет использовать объект класса в качестве аргумента для php-оператора foreach.

Возвращаемым значением при итерации при этом будет объект класса DJEMDocument. При повторном использовании php-оператора foreach выборка будет выполнена заново, что позволяет осуществлять несколько выборок последовательно, изменяя какие-либо отдельные параметры выборки. Например, чтобы выбрать пять самых дешевых товаров из двух разных разделов каталога, можно написать следующий код:

$query R('DJEM')->GetForeach()
                  ->
Path('main.rus.catalogue.tv.$')
                   ->
Sort('#price')
                   ->
Limit(5);

foreach (
$query as $item) {
     print 
$item->_name;
}

$query->Path('main.rus.catalogue.dvd.$');
foreach (
$query as $item) {
     print 
$item->_name;
}

Методы класса

__construct ()
Конструктор класса
__get ()
Доступ к полям текущего документа выборки
Fetch ()
Возвращает очередной элемент выборки
Fields (string $fieldNames)
Позволяет ограничить набор полей в выборке
Limit ( [int $offset], int $cnt)
Ограничение количества документов в выборке
Path (string $path)
Путь к документам, подлежащим выборке
Size ()
Возвращает количество документов в выборке
Sort (string $sort)
Сортировка документов выборки
ToArray ()
Возвращает выборку в виде массива значений
Where (string $where [, mixed $args [, mixed $...]])
Условия выборки

Поиск по документации

© 2005 — 2024 DJEM Solutions, все права защищены. | Дизайн — Студия Fractalla