Инструменты пользователя

Инструменты сайта


limb3:ru:packages:dbal:lmb_criteria_query

lmbCriteriaQuery

lmbCriteriaQuery - это абстрактный класс, который позволяет добавлять сложные условия в SQL-запросы. Наследуется от класса lmbTemplateQuery. lmbCriteriaQuery добавляет поддержку метки вида %where% в SQL-шаблон. Условия, добавляемые в запрос, реализуются в виде классов подсистемы Criteria.

Для добавления новых условий в запрос, используется метод lmbCriteriaQuery :: addCriteria($criteria), например:

  $query->addCriteria(new lmbSQLRawCriteria('recipe_item.cocktail_id = cocktail.id'));
  $criteria = new lmbSQLFieldCriteria('ingredient.name', '%'.$name.'%', lmbSQLFieldCriteria :: LIKE);
  $query->addCriteria($criteria);

Для addCriteria() есть алиас where($criteria).

Если в качестве $criteria пришла обычная строка, то она будет автоматически обвернута в объект класса lmbSQLCriteria():

  $query->where('recipe_item.cocktail_id = cocktail.id');

lmbSelectQuery, lmbUpdateQuery и lmbDeleteQuery наследуются от lmbCriteriaQuery.

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
 __  __  ____    __  ___ ______  __  __
 \ \/ / / __ \  /  |/  //_  __/ / / / /
  \  / / /_/ / / /|_/ /  / /   / /_/ / 
  /_/  \____/ /_/  /_/  /_/    \____/
 
limb3/ru/packages/dbal/lmb_criteria_query.txt · Последние изменения: 2010/11/10 10:02 (внешнее изменение)