【发布时间】:2023-03-12 21:04:01
【问题描述】:
我在 Yii 框架中使用 createCommand,我想知道使用 bindValue 作为参数,例如:
Yii::app()->db->createCommand()
->update('table', array(
'field'=>'$valuefield',
), 'id_table=:id_table', array(':id_table'=>$id_table));
在这种情况下,$valuefield 和 $id_table 的值是受保护的吗?或者我应该手动创建 sql 查询并使用 bindValue 传递参数?
谢谢!
【问题讨论】:
-
are protected是什么意思? -
如果 protected 您的意思是 escaped,那么
$id_table会被转义,因为您正确传递了它。$valuefield将无法正确传递,因为您将其放在单引号中。这样做:Yii::app()->db->createCommand()->update('table', array('field'=>':valuefield'), 'id_table=:id_table', array(':id_table'=>$id_table, ':valuefield'=>$valuefield)); -
我想要平均消毒。感谢您的回复,我将在查询中应用它。
标签: php database yii bindvalue