Spec-Zone.ru › CakePHP 4.4

Класс ComparisonExpression

Сравнение — это тип выражения запроса, представляющий операцию, включающую поле, оператор и значение. В своем наиболее распространенном виде строковое представление сравнения — field = value

Пространство имён: Cake\Database\Expression

Краткое описание свойств

  • $_field protected
    Cake\Database\ExpressionInterface|array|string

    Имя поля или выражение, используемое в левой части оператора

  • $_isMultiple protected
    bool

    Указывает, является ли значение в этом выражении итерируемым

  • $_operator protected
    string

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

  • $_type protected
    string|null

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

  • $_value protected
    mixed

    Значение, используемое в правой части операции

  • $_valueExpressions protected
    arrayCake\Database\ExpressionInterface>

    Кэшированный список объектов ExpressionInterface, найденных в значении этого выражения.

Краткое описание методов

  • __clone() public

    Создаёт глубокую копию.

  • __construct() public

    Конструктор

  • _bindValue() protected

    Регистрирует значение в генераторе плейсхолдеров и возвращает сгенерированный плейсхолдер

  • _castToExpression() protected

    Условно преобразует переданное значение в объект ExpressionInterface, если тип класса реализует ExpressionTypeInterface. В противном случае возвращает значение без изменений.

  • _collectExpressions() protected

    Возвращает массив с исходными значениями $values в первой позиции и всеми объектами ExpressionInterface, которые могут быть найдены во второй позиции.

  • _flattenValue() protected

    Преобразует итерируемое значение в набор плейсхолдеров, сгенерированных $binder и разделенных ,

  • _requiresToExpressionCasting() protected

    Возвращает массив с типами, для которых требуется преобразование значений в выражения, из списка имён типов, переданных в качестве параметра.

  • _stringExpression() protected

    Возвращает шаблон и плейсхолдер для значения после его регистрации у плейсхолдера $binder

  • getField() public

    Возвращает имя поля

  • getOperator() public

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

  • getValue() public

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

  • setField() public

    Устанавливает имя поля

  • setOperator() public

    Устанавливает оператор для использования в сравнении

  • setValue() public

    Устанавливает значение

  • sql() public

    Преобразует узел в фрагмент SQL-строки.

  • traverse() public

    Итерирует по каждой части выражения рекурсивно для каждого уровня дерева выражений и выполняет вызываемый $callback, передавая в качестве первого параметра экземпляр выражения, по которому в данный момент выполняется итерация.

Подробное описание методов

__clone() public

__clone(): void

Создать глубокую копию.

Копирует поле и значение, если они являются объектами выражения.

Возвращает

void

__construct() public

__construct(Cake\Database\ExpressionInterface|string $field, mixed $value, string|null $type = null, string $operator = '=')

Конструктор

Параметры

Cake\Database\ExpressionInterface|string $field

имя поля для сравнения со значением

mixed $value

Значение, используемое для сравнения

string|null $type необязательно

имя типа, используемое для приведения значения

string $operator необязательно

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

_bindValue() protected

_bindValue(mixed $value, Cake\Database\ValueBinder $binder, string|null $type = null): string

Регистрирует значение в генераторе заготовок и возвращает сгенерированную заготовку

Параметры

mixed $value

Значение для привязки

Cake\Database\ValueBinder $binder

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

string|null $type необязательно

Тип $value

Возвращает

string

_castToExpression() protected

_castToExpression(mixed $value, string|null $type = null): mixed

Условно преобразует переданное значение в объект ExpressionInterface, если класс типа реализует ExpressionTypeInterface. В противном случае возвращает значение без изменений.

Параметры

mixed $value

Значение для преобразования в ExpressionInterface

string|null $type необязательно

Имя типа

Возвращает

mixed

_collectExpressions() protected

_collectExpressions(Cake\Database\ExpressionInterface|iterable $values): array

Возвращает массив с исходными $значениями на первом месте и всеми объектами ExpressionInterface, которые могли быть найдены на втором месте.

Параметры

Cake\Database\ExpressionInterface|iterable $values

Строки для вставки

Возвращает

array

_flattenValue() protected

_flattenValue(iterable $value, Cake\Database\ValueBinder $binder, string|null $type = null): string

Преобразует итерируемое значение в набор заготовок, сгенерированных $binder и разделенных ,

Параметры

iterable $value

значение для уплощения

Cake\Database\ValueBinder $binder

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

string|null $type необязательно

тип для преобразования значений

Возвращает

string

_requiresToExpressionCasting() protected

_requiresToExpressionCasting(array $types): array

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

Параметры

array $types

Список имён типов

Возвращает

array

_stringExpression() protected

_stringExpression(Cake\Database\ValueBinder $binder): array

Возвращает шаблон и заготовку для значения после его регистрации с привязывателем заготовок $binder

Параметры

Cake\Database\ValueBinder $binder

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

Возвращает

array

getField() public

getField(): Cake\Database\ExpressionInterface|array|string

Возвращает имя поля

Возвращает

Cake\Database\ExpressionInterface|array|string

getOperator() public

getOperator(): string

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

Возвращает

string

getValue() public

getValue(): mixed

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

Возвращает

mixed

setField() public

setField(Cake\Database\ExpressionInterface|array|string $field): void

Устанавливает имя поля

Параметры

Cake\Database\ExpressionInterface|array|string $field

Поле для сравнения.

Возвращает

void

setOperator() public

setOperator(string $operator): void

Устанавливает оператор для сравнения

Параметры

string $operator

Оператор для сравнения.

Возвращает

void

setValue() public

setValue(mixed $value): void

Устанавливает значение

Параметры

mixed $value

Значение для сравнения

Возвращает

void

sql() public

sql(Cake\Database\ValueBinder $binder): string

Преобразует узел в фрагмент SQL-строки.

Параметры

Cake\Database\ValueBinder $binder

Возвращает

string

traverse() public

traverse(Closure $callback): $this

Рекурсивно перебирает каждую часть выражения на каждом уровне дерева выражений и выполняет вызов $callback, передавая в качестве первого параметра экземпляр текущего итерируемого выражения.

Параметры

Closure $callback

Возвращает

$this

Подробное описание свойств

$_field protected

Имя поля или выражение, используемое в левой части оператора

Тип

Cake\Database\ExpressionInterface|array|string

$_isMultiple protected

Является ли значение в этом выражении итерируемым

Тип

bool

$_operator protected

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

Тип

string

$_type protected

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

Тип

string|null

$_value protected

Значение, используемое в правой части операции

Тип

mixed

$_valueExpressions protected

Кэшированный список объектов ExpressionInterface, которые были найдены в значении для этого выражения.

Тип

arrayCake\Database\ExpressionInterface>

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Database.Expression.ComparisonExpression.html

Spec-Zone.ru

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