在变量之前使用“:”是什么意思?
例如,此代码中的:userId
:
public function removeUser($userId)
{
$command = Yii::app()->db->createCommand();
$command->delete(
'tbl_project_user_assignment',
'user_id=:userId AND project_id=:projectId',
array(':userId'=>$userId,':projectId'=>$this->id));
}
这是Yii框架中的PHP,MySQL代码。
答案 0 :(得分:8)
冒号是一个常见字符,表示SQL语句中变量值的占位符。在这种情况下,那些占位符在运行时被userId
和project_id
的值替换。这对于避免SQL注入漏洞非常有用。
答案 1 :(得分:3)
答案 2 :(得分:0)
正如thaidiotguy所提到的那样,这是一个充满准备陈述的特征,特别是PDO。在PDO中,冒号告诉以下是命名参数。