Класс TupleComparison
Данное выражение представляет фрагменты SQL, используемые для сравнения одной кортежи с другой, одной кортежи с набором других кортежей или одной кортежи с выражением
- Cake\Database\Expression\Comparison реализует Cake\Database\ExpressionInterface, Cake\Database\Expression\FieldInterface использует Cake\Database\Type\ExpressionTypeCasterTrait , Cake\Database\Expression\FieldTrait
-
Cake\Database\Expression\TupleComparison
Унаследованные свойства
Краткое описание методов
- __construct() publicКонструктор
- _bindValue() protected
Регистрирует значение в генераторе плейсхолдеров и возвращает сгенерированный плейсхолдер
- _stringifyValues() protected
Возвращает строку со значениями в качестве плейсхолдеров в строке, которая будет использоваться для SQL-версии этого выражения
- _traverseValue() protected
Условно выполняет обратный вызов для переданного значения, если оно является объектом ExpressionInterface
- isMulti() public
Определяет, является ли каждое из значений в этом выражении кортежем
- sql() publicПреобразовать выражение в фрагмент SQL.
- traverse() public
Проходит по дереву выражений, сохранённых в этом объекте, сначала посещая выражения в левой части, а затем остальные.
Подробное описание методов
__construct()source public
__construct( string|array|Cake\Database\ExpressionInterface $fields , array|Cake\Database\ExpressionInterface $values , array $types [] , string $conjunction '=' )
Конструктор
Параметры
- string|array|
Cake\Database\ExpressionInterface$fields - поля, используемые для формирования кортежа
- array|
Cake\Database\ExpressionInterface$values - значения, используемые для формирования кортежа
- array
$typesoptional [] названия типов для преобразования каждого из значений, нужен только один тип на позицию в массиве значений
- string
$conjunctionoptional '=' - оператор, используемый для сравнения поля и значения
Переопределяет
Cake\Database\Expression\Comparison::__construct() _bindValue()source protected
_bindValue( Cake\Database\ValueBinder $generator , mixed $value , string $type )
Регистрирует значение в генераторе плейсхолдеров и возвращает сгенерированный плейсхолдер
Параметры
- Cake\Database\ValueBinder
$generator - объект связывания значений
- mixed
$value - связываемое значение
- string
$type - используемый тип
Возвращает
строкасгенерированный плейсхолдер
Переопределяет
Cake\Database\Expression\Comparison::_bindValue() _stringifyValues()source protected
_stringifyValues( Cake\Database\ValueBinder $generator )
Возвращает строку со значениями в качестве плейсхолдеров в строке, которая будет использоваться для SQL-версии этого выражения
Параметры
- Cake\Database\ValueBinder
$generator - объект для преобразования выражений
Возвращает
строка_traverseValue()source protected
_traverseValue( mixed $value , callable $callable )
Условно выполняет обратный вызов для переданного значения, если оно является объектом ExpressionInterface
Параметры
- mixed
$value - значение для обхода
- callable
$callable - используемая функция обратного вызова
isMulti()source public
isMulti( )
Определяет, является ли каждое из значений в этом выражении кортежем
Возвращает
логическоеsql()source public
sql( Cake\Database\ValueBinder $generator )
Преобразовать выражение в фрагмент SQL.
Параметры
- Cake\Database\ValueBinder
$generator - объект генерации плейсхолдеров
Возвращает
строкаПереопределяет
Cake\Database\Expression\Comparison::sql() traverse()source public
traverse( callable $callable )
Проходит по дереву выражений, сохранённых в этом объекте, сначала посещая выражения в левой части, а затем остальные.
Функция обратного вызова получает в качестве единственного аргумента экземпляр ExpressionInterface
Параметры
- callable
$callable - используемая функция обратного вызова
Переопределяет
Cake\Database\Expression\Comparison::traverse() Методы, унаследованные от Cake\Database\Expression\Comparison
__clone()source public
__clone( )
Создаёт глубокую копию.
Создаёт копии поля и значения, если они являются объектами выражений.
_collectExpressions()source protected
_collectExpressions( array|Traversable $values )
Возвращает массив, содержащий исходные значения $values на первой позиции и все объекты ExpressionInterface, которые были найдены на второй позиции.
Параметры
- array|Traversable
$values - строки для вставки
Возвращает
массив_flattenValue()source protected
_flattenValue( array|Traversable $value , Cake\Database\ValueBinder $generator , string|array|null $type 'string' )
Преобразует значение traversable в набор плейсхолдеров, сгенерированных $generator и разделённых ,
Параметры
- array|Traversable
$value - значение для уплощения
- Cake\Database\ValueBinder
$generator - объект для связывания значений
- string|array|null
$typeoptional 'string' - тип для преобразования значений
Возвращает
строка_stringExpression()source protected
_stringExpression( Cake\Database\ValueBinder $generator )
Возвращает шаблон и плейсхолдер для значения после его регистрации в генераторе плейсхолдеров $generator
Параметры
- Cake\Database\ValueBinder
$generator - используемый объект связывания значений
Возвращает
массивПервая позиция содержит шаблон, вторая — плейсхолдер
getOperator()source public
getOperator( )
Возвращает оператор, используемый для сравнения
Возвращает
строкаgetValue()source public
getValue( )
Возвращает значение, используемое для сравнения
Возвращает
смешанноеsetOperator()source public
setOperator( string $operator )
Устанавливает оператор для сравнения
Параметры
- строка
$operator - Оператор, используемый для сравнения.
setValue()source public
setValue( mixed $value )
Устанавливает значение
Параметры
- смешанное
$value - Значение для сравнения
Методы, используемые из Cake\Database\Type\ExpressionTypeCasterTrait
_castToExpression()source protected
_castToExpression( mixed $value , string $type )
Условно преобразует переданное значение в объект ExpressionInterface, если класс типа реализует ExpressionTypeInterface. В противном случае возвращает значение без изменений.
Параметры
- смешанное
$value - Значение, которое нужно преобразовать в ExpressionInterface
- строка
$type - Имя типа
Возвращает
смешанное_requiresToExpressionCasting()source protected
_requiresToExpressionCasting( array $types )
Возвращает массив с типами, для которых значения необходимо преобразовывать в выражения, из списка имен типов, переданных в качестве параметра.
Параметры
- массив
$types - Список имен типов
Возвращает
массивМетоды, используемые из Cake\Database\Expression\FieldTrait
getField()source public
getField( )
Возвращает имя поля
Возвращает
строка|Cake\Database\ExpressionInterfacesetField()source public
setField( string|Cake\Database\ExpressionInterface $field )
Устанавливает имя поля
Параметры
- строка|
Cake\Database\ExpressionInterface$field - Поле для сравнения.
© 2005–2017 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.4/class-Cake.Database.Expression.TupleComparison.html