Class yii\db\Expression

继承yii\db\Expression » yii\base\BaseObject
实现yii\base\Configurable, yii\db\ExpressionInterface
可用自版本2.0
源代码 https://github.com/yiisoft/yii2/blob/master/framework/db/Expression.php

Expression 表示不需要转义或引用的 DB 表达式.

当 Expression 对象嵌入到 SQL 语句或片段中时, 它将被 $expression 属性值替换, 而无需任何数据库转义或引用. 例如:

$expression = new Expression('NOW()');
$now = (new \yii\db\Query)->select($expression)->scalar();  // SELECT NOW();
echo $now; // 打印当前日期

Expression 对象主要用于将原始 SQL 表达式传递给 yii\db\Query, yii\db\ActiveQuery 和相关类的方法.

Expression 也可以与通过 $params 指定的参数进行绑定.

公共属性

隐藏继承的属性

属性类型描述定义在
$expression string DB 表达式. yii\db\Expression
$params array 此表达式应绑定的参数列表. yii\db\Expression

公共方法

隐藏继承的方法

方法描述定义在
__call() 调用不是类方法的已命名方法. yii\base\BaseObject
__construct() 构造函数. yii\db\Expression
__get() 返回对象属性的值. yii\base\BaseObject
__isset() 检查属性是否已设置, 即已定义且不为null. yii\base\BaseObject
__set() 设置对象属性的值. yii\base\BaseObject
__toString() 字符串魔术方法. yii\db\Expression
__unset() 将对象属性设置为null. yii\base\BaseObject
canGetProperty() 返回一个值, 指示属性是否可读. yii\base\BaseObject
canSetProperty() 返回一个值, 指示属性是否可写. yii\base\BaseObject
className() 返回此类的完全限定名称. yii\base\BaseObject
hasMethod() 返回一个值, 指示方法是否已定义. yii\base\BaseObject
hasProperty() 返回一个值, 指示属性是否已定义. yii\base\BaseObject
init() 初始化对象. yii\base\BaseObject

属性详情

$expression public 属性

DB 表达式.

public string $expression null
$params public 属性

此表达式应绑定的参数列表. 键是出现在 $expression 中出占位符, 值是相应的参数值.

public array $params = []

方法详情

__construct() public 方法

构造函数.

public void __construct ( $expression, $params = [], $config = [] )
$expression string

DB 表达式.

$params array

参数.

$config array

将用于初始化对象属性的 name-value 对.

__toString() public 方法

字符串魔术方法.

public string __toString ( )
return string

DB 表达式.