Spec-Zone.ru › CakePHP 3.7

Класс Сравнение

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

Cake\Database\Expression\Comparison реализует Cake\Database\ExpressionInterface, Cake\Database\Expression\FieldInterface использует Cake\Database\Type\ExpressionTypeCasterTrait , Cake\Database\Expression\FieldTrait

Непосредственные подклассы

  • Cake\Database\Expression\TupleComparison
Пространство имён: Cake\Database\Expression
Расположение: Database/Expression/Comparison.php

Резюме свойств

  • $_isMultiple protected
    boolean
    Является ли значение в этом выражении итерируемым
  • $_operator protected
    string
    Оператор, используемый для сравнения поля и значения
  • $_type protected
    string|array
    Тип, используемый для преобразования значения в представление базы данных
  • $_value protected
    mixed
    Значение, используемое в правой части операции
  • $_valueExpressions protected
    Cake\Database\ExpressionInterface[]

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

Унаследованные свойства

  • _field

Резюме методов

  • __clone() public
    Создать глубокую копию.
  • __construct() public
    Конструктор
  • _bindValue() protected
    Регистрирует значение в генераторе плейсхолдеров и возвращает сгенерированный плейсхолдер
  • _collectExpressions() protected

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

  • _flattenValue() protected

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

  • _stringExpression() protected

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

  • getOperator() public
    Возвращает оператор, используемый для сравнения
  • getValue() public
    Возвращает значение, используемое для сравнения
  • setOperator() public
    Устанавливает оператор для использования в сравнении
  • setValue() public
    Устанавливает значение
  • sql() public
    Преобразовать выражение в фрагмент SQL.
  • traverse() public

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

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

__clone()source public

__clone( )

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

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

__construct()source public

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

Конструктор

Параметры

string|Cake\Database\ExpressionInterface $field
имя поля для сравнения со значением
mixed $value
Значение для сравнения
string $type
имя типа для преобразования значения
string $operator
оператор для сравнения поля и значения

_bindValue()source protected

_bindValue( mixed $value , Cake\Database\ValueBinder $generator , string $type )

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

Параметры

mixed $value
Значение для привязки
Cake\Database\ValueBinder $generator
Используемый генератор плейсхолдеров
string $type
Тип $value

Возвращает

string
сгенерированный плейсхолдер

_collectExpressions()source protected

_collectExpressions( array|Traversable $values )

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

Параметры

array|Traversable $values
Строки для вставки

Возвращает

array

_flattenValue()source protected

_flattenValue( array|Traversable $value , Cake\Database\ValueBinder $generator , string|array|null $type = 'string' )

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

Параметры

array|Traversable $value
значение для сглаживания
Cake\Database\ValueBinder $generator
Используемый генератор плейсхолдеров
string|array|null $type optional 'string'
тип для преобразования значений

Возвращает

string

_stringExpression()source protected

_stringExpression( Cake\Database\ValueBinder $generator )

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

Параметры

Cake\Database\ValueBinder $generator
Используемый генератор плейсхолдеров.

Возвращает

array
Первое значение — шаблон, второе — плейсхолдер

getOperator()source public

getOperator( )

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

Возвращает

string

getValue()source public

getValue( )

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

Возвращает

mixed

setOperator()source public

setOperator( string $operator )

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

Параметры

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

setValue()source public

setValue( mixed $value )

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

Параметры

mixed $value
Значение для сравнения
END_OF_DOCUMENT_MARKER

sql()source public

sql( Cake\Database\ValueBinder $generator )

Преобразовать выражение в фрагмент SQL.

Параметры

Cake\Database\ValueBinder $generator
Объект-генератор заменителей значений

Возвращаемое значение

string

Реализация

Cake\Database\ExpressionInterface::sql()

traverse()source public

traverse( callable $callable )

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

Параметры

callable $callable
$visitor Вызываемый объект для применения ко всем узлам.

Реализация

Cake\Database\ExpressionInterface::traverse()

Методы, используемые из Cake\Database\Type\ExpressionTypeCasterTrait

_castToExpression()source protected

_castToExpression( mixed $value , string $type )

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

Параметры

mixed $value
Значение для преобразования в ExpressionInterface
string $type
Имя типа

Возвращаемое значение

mixed

_requiresToExpressionCasting()source protected

_requiresToExpressionCasting( array $types )

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

Параметры

array $types
Список имен типов

Возвращаемое значение

array

Методы, используемые из Cake\Database\Expression\FieldTrait

getField()source public

getField( )

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

Возвращаемое значение

string|Cake\Database\ExpressionInterface

setField()source public

setField( string|Cake\Database\ExpressionInterface $field )

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

Параметры

string|Cake\Database\ExpressionInterface $field
Поле для сравнения.

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

$_isMultiplesource

protected boolean

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

false

$_operatorsource

protected string

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

$_typesource

protected string|array

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

$_valuesource

protected mixed

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

$_valueExpressionssource

protected Cake\Database\ExpressionInterface[]

Кэшированный список объектов 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/3.7/class-Cake.Database.Expression.Comparison.html

Spec-Zone.ru

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