绑定参数预处理 SQL 可以有效的防 SQL 注入攻击; Yii1 框架的 ActiveRecord 操作数据库默认就可以防止注入 ,但是复杂业务下 使用 DAO 操作数据库就需要小心了

<?php
$sql = "SELECT * FROM admin_user WHERE user_name=:uname AND password LIKE :c";
$command = Yii::app()->db->createCommand($sql);
$a = 'admin1';
$c = '%mkjymji%';
$command->bindParam(":uname",$a,PDO::PARAM_STR);
$command->bindParam(":c",$c,PDO::PARAM_STR);
$r = $command->queryAll();
var_dump($r);exit;

绑定参数的时候 如果是PDO::PARAM_STR类型的参数 是不需要在SQL里面再写引号的