1 follower

Class yii\db\conditions\BetweenColumnsCondition

Inheritanceyii\db\conditions\BetweenColumnsCondition
Implementsyii\db\conditions\ConditionInterface
Available since version2.0.14
Source Code https://github.com/yiisoft/yii2/blob/master/framework/db/conditions/BetweenColumnsCondition.php

Class BetweenColumnCondition represents a BETWEEN condition where values is between two columns. For example:

new BetweenColumnsCondition(42, 'BETWEEN', 'min_value', 'max_value') // Will be build to: // 42 BETWEEN min_value AND max_value 

And a more complex example:

new BetweenColumnsCondition( new Expression('NOW()'), 'NOT BETWEEN', (new Query)->select('time')->from('log')->orderBy('id ASC')->limit(1), 'update_time' ); // Will be built to: // NOW() NOT BETWEEN (SELECT time FROM log ORDER BY id ASC LIMIT 1) AND update_time 

Method Details

Hide inherited methods

__construct() public method

Creates a condition with the BETWEEN operator.

public mixed __construct ( mixed $value, string $operator, string|yii\db\ExpressionInterface $intervalStartColumn, string|yii\db\ExpressionInterface $intervalEndColumn )
$value mixed

The value to compare against

$operator string

The operator to use (e.g. BETWEEN or NOT BETWEEN)

$intervalStartColumn string|yii\db\ExpressionInterface

The column name or expression that is a beginning of the interval

$intervalEndColumn string|yii\db\ExpressionInterface

The column name or expression that is an end of the interval

 public function __construct($value, $operator, $intervalStartColumn, $intervalEndColumn) { $this->value = $value; $this->operator = $operator; $this->intervalStartColumn = $intervalStartColumn; $this->intervalEndColumn = $intervalEndColumn; }  
fromArrayDefinition() public static method

Creates object by array-definition as described in Query Builder – Operator format guide article.

public static static fromArrayDefinition ( mixed $operator, mixed $operands )
$operator mixed

Operator in uppercase.

$operands mixed

Array of corresponding operands

throws yii\base\InvalidArgumentException

if wrong number of operands have been given.

 public static function fromArrayDefinition($operator, $operands) { if (!isset($operands[0], $operands[1], $operands[2])) { throw new InvalidArgumentException("Operator '$operator' requires three operands."); } return new static($operands[0], $operator, $operands[1], $operands[2]); }  
getIntervalEndColumn() public method

public string|yii\db\ExpressionInterface|yii\db\Query getIntervalEndColumn ( )

 public function getIntervalEndColumn() { return $this->intervalEndColumn; }  
getIntervalStartColumn() public method

public string|yii\db\ExpressionInterface|yii\db\Query getIntervalStartColumn ( )

 public function getIntervalStartColumn() { return $this->intervalStartColumn; }  
getOperator() public method

public string getOperator ( )

 public function getOperator() { return $this->operator; }  
getValue() public method

public mixed getValue ( )

 public function getValue() { return $this->value; }