$_value
$_value : mixed
The value to be used in the right hand side of the operation
This expression represents SQL fragments that are used for comparing one tuple to another, one tuple to a set of other tuples or one tuple to an expression
$_valueExpressions : array<mixed,\Cake\Database\ExpressionInterface>
A cached list of ExpressionInterface objects that were found in the value for this expression.
$_field : string|\Cake\Database\ExpressionInterface
The field name or expression to be used in the left hand side of the operator
__construct(string|array|\Cake\Database\ExpressionInterface $fields, array|\Cake\Database\ExpressionInterface $values, array $types = array(), string $conjunction = '=')
Constructor
string|array|\Cake\Database\ExpressionInterface | $fields | the fields to use to form a tuple |
array|\Cake\Database\ExpressionInterface | $values | the values to use to form a tuple |
array | $types | the types names to use for casting each of the values, only one type per position in the value array in needed |
string | $conjunction | the operator used for comparing field and value |
sql(\Cake\Database\ValueBinder $generator) : string
Convert the expression into a SQL fragment.
\Cake\Database\ValueBinder | $generator | Placeholder generator object |
traverse(callable $callable) : void
Traverses the tree of expressions stored in this object, visiting first expressions in the left hand side and then the rest.
Callback function receives as its only argument an instance of an ExpressionInterface
callable | $callable | The callable to apply to sub-expressions |
setField(string|\Cake\Database\ExpressionInterface $field) : void
Sets the field name
string|\Cake\Database\ExpressionInterface | $field | The field to compare with. |
getField() : string|\Cake\Database\ExpressionInterface
Returns the field name
_stringExpression(\Cake\Database\ValueBinder $generator) : array
Returns a template and a placeholder for the value after registering it with the placeholder $generator
\Cake\Database\ValueBinder | $generator | The value binder to use. |
First position containing the template and the second a placeholder
_bindValue(\Cake\Database\ValueBinder $generator, mixed $value, string $type) : string
Registers a value in the placeholder generator and returns the generated placeholder
\Cake\Database\ValueBinder | $generator | The value binder |
mixed | $value | The value to bind |
string | $type | The type to use |
generated placeholder
_flattenValue(array|\Traversable $value, \Cake\Database\ValueBinder $generator, string|array|null $type = 'string') : string
Converts a traversable value into a set of placeholders generated by $generator and separated by `,`
array|\Traversable | $value | the value to flatten |
\Cake\Database\ValueBinder | $generator | The value binder to use |
string|array|null | $type | the type to cast values to |
_castToExpression(mixed $value, string $type) : mixed
Conditionally converts the passed value to an ExpressionInterface object if the type class implements the ExpressionTypeInterface. Otherwise, returns the value unmodified.
mixed | $value | The value to converto to ExpressionInterface |
string | $type | The type name |
_stringifyValues(\Cake\Database\ValueBinder $generator) : string
Returns a string with the values as placeholders in a string to be used for the SQL version of this expression
\Cake\Database\ValueBinder | $generator | The value binder to convert expressions with. |