Spec-Zone.ru › Phalcon 3

Класс Phalcon\Mvc\Model\Criteria

реализует Phalcon\Mvc\Model\CriteriaInterface, Phalcon\Di\InjectionAwareInterface

Исходный код на GitHub

Этот класс используется для построения массива параметров, необходимых для Phalcon\Mvc\Model::find() и Phalcon\Mvc\Model::findFirst(), используя объектно-ориентированный интерфейс.

$robots = Robots::query()
    ->where("type = :type:")
    ->andWhere("year < 2000")
    ->bind(["type" => "mechanical"])
    ->limit(5, 10)
    ->orderBy("name")
    ->execute();

Методы

public setDI (Phalcon\DiInterface $dependencyInjector)

Устанавливает контейнер DependencyInjector

public getDI ()

Возвращает контейнер DependencyInjector

public setModelName (смешанный тип $modelName)

Устанавливает модель, для которой будет выполняться запрос

public getModelName ()

Возвращает внутреннее имя модели, к которой будут применяться критерии

public bind (массив $bindParams, [смешанный тип $merge])

Устанавливает связанные параметры в критериях. Этот метод заменяет все ранее заданные связанные параметры.

public bindTypes (массив $bindTypes)

Устанавливает типы связей в критериях. Этот метод заменяет все ранее заданные связанные параметры.

public distinct (смешанный тип $distinct)

Устанавливает флаг SELECT DISTINCT / SELECT ALL

public Phalcon\Mvc\Model\Criteria columns (строка | массив $columns)

Устанавливает столбцы для запроса

$criteria->columns(
    [
        "id",
        "name",
    ]
);

public join (смешанный тип $model, [смешанный тип $conditions], [смешанный тип $alias], [смешанный тип $type])

Добавляет INNER соединение к запросу

$criteria->join("Robots");
$criteria->join("Robots", "r.id = RobotsParts.robots_id");
$criteria->join("Robots", "r.id = RobotsParts.robots_id", "r");
$criteria->join("Robots", "r.id = RobotsParts.robots_id", "r", "LEFT");

public innerJoin (смешанный тип $model, [смешанный тип $conditions], [смешанный тип $alias])

Добавляет INNER соединение к запросу

$criteria->innerJoin("Robots");
$criteria->innerJoin("Robots", "r.id = RobotsParts.robots_id");
$criteria->innerJoin("Robots", "r.id = RobotsParts.robots_id", "r");

public leftJoin (смешанный тип $model, [смешанный тип $conditions], [смешанный тип $alias])

Добавляет LEFT соединение к запросу

$criteria->leftJoin("Robots", "r.id = RobotsParts.robots_id", "r");

public rightJoin (смешанный тип $model, [смешанный тип $conditions], [смешанный тип $alias])

Добавляет RIGHT соединение к запросу

$criteria->rightJoin("Robots", "r.id = RobotsParts.robots_id", "r");

public where (смешанный тип $conditions, [смешанный тип $bindParams], [смешанный тип $bindTypes])

Устанавливает параметр conditions в критериях

public addWhere (смешанный тип $conditions, [смешанный тип $bindParams], [смешанный тип $bindTypes])

Добавляет условие к текущим условиям с помощью оператора AND (устаревший метод)

public andWhere (смешанный тип $conditions, [смешанный тип $bindParams], [смешанный тип $bindTypes])

Добавляет условие к текущим условиям с помощью оператора AND

public orWhere (смешанный тип $conditions, [смешанный тип $bindParams], [смешанный тип $bindTypes])

Добавляет условие к текущим условиям с помощью оператора OR

public betweenWhere (смешанный тип $expr, смешанный тип $minimum, смешанный тип $maximum)

Добавляет условие BETWEEN к текущим условиям

$criteria->betweenWhere("price", 100.25, 200.50);

public notBetweenWhere (смешанный тип $expr, смешанный тип $minimum, смешанный тип $maximum)

Добавляет условие NOT BETWEEN к текущим условиям

$criteria->notBetweenWhere("price", 100.25, 200.50);

public inWhere (смешанный тип $expr, массив $values)

Добавляет условие IN к текущим условиям

$criteria->inWhere("id", [1, 2, 3]);

public notInWhere (смешанный тип $expr, массив $values)

Добавляет условие NOT IN к текущим условиям

$criteria->notInWhere("id", [1, 2, 3]);

public conditions (смешанный тип $conditions)

Добавляет параметр conditions в критерии

public order (смешанный тип $orderColumns)

Добавляет параметр order-by в критерии (устаревший метод)

public orderBy (смешанный тип $orderColumns)

Добавляет условие order-by в критерии

public groupBy (смешанный тип $group)

Добавляет условие group-by в критерии

public having (смешанный тип $having)

Добавляет условие having в критерии

public limit (смешанный тип $limit, [смешанный тип $offset])

Добавляет параметр limit в критерии.

$criteria->limit(100);
$criteria->limit(100, 200);
$criteria->limit("100", "200");

public forUpdate ([смешанный тип $forUpdate])

Добавляет параметр «for_update» в критерии

public sharedLock ([смешанный тип $sharedLock])

Добавляет параметр «shared_lock» в критерии

public cache (массив $cache)

Устанавливает параметры кэша в критериях. Этот метод заменяет все ранее заданные параметры кэша.

public getWhere ()

Возвращает параметр conditions в критериях

public строка | массив | null getColumns ()

Возвращает столбцы для запроса

public getConditions ()

Возвращает параметр conditions в критериях

public целое число | массив | null getLimit ()

Возвращает параметр limit в критериях, который будет целым числом, если limit был задан без смещения, массивом с ключами ‘number’ и ‘offset’, если смещение было задано вместе с limit, или null, если limit не был задан.

public getOrderBy ()

Возвращает условие order в критериях

public getGroupBy ()

Возвращает условие group в критериях

public getHaving ()

Возвращает условие having в критериях

public массив getParams ()

Возвращает все параметры, определённые в критериях

public static fromInput (Phalcon\DiInterface $dependencyInjector, смешанный тип $modelName, массив $data, [смешанный тип $operator])

Создаёт Phalcon\Mvc\Model\Criteria на основе входного массива, например, _POST

public execute ()

Выполняет find с параметрами, созданными с помощью критериев

© 2011–2017 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0.
https://docs.phalconphp.com/en/latest/api/Phalcon_Mvc_Model_Criteria.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API