Yii2 直接输出 MySQL语句的方法:
如果你是想打印本次的Sql的话,可以用
$model->find()->createCommand()->getRawSql()
;
注意:这里不能带 all()或者One()
。find()
返回值类型是 yii\db\ActiveQuery
,find()->all()
返回的就是数组了Query()也一样不能带all()或者One()。
上代码例子
$query = (new Query())
->select(['id', 'name'])
->from(['User' => User::tableName()])
->where(['User.is_del' => 0]);
$query->all() //直接输出查询结果
$query->createCommand()->getRawSql() //输出SQL语句 'SELECT `id`, `name` FROM `vk_user` `User` WHERE `User`.`is_del`=0'