Class BetweenExpression
An expression object that represents a SQL BETWEEN snippet
Property Summary
- 
        $_field protected
string|array|Cake\Database\ExpressionInterfaceThe field name or expression to be used in the left hand side of the operator
 - 
        $_from protected
mixedThe first value in the expression
 - 
        $_to protected
mixedThe second value in the expression
 - 
        $_type protected
mixedThe data type for the from and to arguments
 
Method Summary
- 
          
__clone() public
Do a deep clone of this expression.
 - 
          
__construct() public
Constructor
 - 
          
_bindValue() protected
Registers a value in the placeholder generator and returns the generated placeholder
 - 
          
_castToExpression() protected
Conditionally converts the passed value to an ExpressionInterface object if the type class implements the ExpressionTypeInterface. Otherwise, returns the value unmodified.
 - 
          
_requiresToExpressionCasting() protected
Returns an array with the types that require values to be casted to expressions, out of the list of type names passed as parameter.
 - 
          
getField() public
Returns the field name
 - 
          
setField() public
Sets the field name
 - 
          
sql() public
Converts the expression to its string representation
 - 
          
traverse() public
Iterates over each part of the expression recursively for every level of the expressions tree and executes the $visitor callable passing as first parameter the instance of the expression currently being iterated.
 
Method Detail
__construct() ¶ public
__construct(string|Cake\Database\ExpressionInterface $field, mixed $from, mixed $to, string|null $type = null)
      Constructor
Parameters
- 
                
string|Cake\Database\ExpressionInterface$field The field name to compare for values inbetween the range.
- 
                
mixed$from The initial value of the range.
- 
                
mixed$to The ending value in the comparison range.
- 
                
string|null$type optional The data type name to bind the values with.
_bindValue() ¶ protected
_bindValue(mixed $value, Cake\Database\ValueBinder $generator, string $type): string
      Registers a value in the placeholder generator and returns the generated placeholder
Parameters
- 
                
mixed$value The value to bind
- 
                
Cake\Database\ValueBinder$generator The value binder to use
- 
                
string$type The type of $value
Returns
stringgenerated placeholder
_castToExpression() ¶ protected
_castToExpression(mixed $value, string|null $type = null): mixed
      Conditionally converts the passed value to an ExpressionInterface object if the type class implements the ExpressionTypeInterface. Otherwise, returns the value unmodified.
Parameters
- 
                
mixed$value The value to converto to ExpressionInterface
- 
                
string|null$type optional The type name
Returns
mixed_requiresToExpressionCasting() ¶ protected
_requiresToExpressionCasting(array $types): array
      Returns an array with the types that require values to be casted to expressions, out of the list of type names passed as parameter.
Parameters
- 
                
array$types List of type names
Returns
arraygetField() ¶ public
getField(): string|array|Cake\Database\ExpressionInterface
      Returns the field name
Returns
string|array|Cake\Database\ExpressionInterfacesetField() ¶ public
setField(string|array|Cake\Database\ExpressionInterface $field): void
      Sets the field name
Parameters
- 
                
string|array|Cake\Database\ExpressionInterface$field The field to compare with.
Returns
voidsql() ¶ public
sql(Cake\Database\ValueBinder $generator): string
      Converts the expression to its string representation
Parameters
- 
                
Cake\Database\ValueBinder$generator Placeholder generator object
Returns
stringtraverse() ¶ public
traverse(Closure $visitor): $this
      Iterates over each part of the expression recursively for every level of the expressions tree and executes the $visitor callable passing as first parameter the instance of the expression currently being iterated.
Parameters
- 
                
Closure$visitor 
Returns
$thisProperty Detail
$_field ¶ protected
The field name or expression to be used in the left hand side of the operator
Type
string|array|Cake\Database\ExpressionInterface