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 — 127.0.0.1