php – 如何在Yii框架中使用mysql_escape_string()?

前端之家收集整理的这篇文章主要介绍了php – 如何在Yii框架中使用mysql_escape_string()?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

众所周知,我们不能在Yii等框架中使用原始MySQL查询.我想在我的项目中使用MysqL_escape_string,该项目在Yii框架中运行,以避免用户输入中的sql注入.

我知道在PHP 5.5中不推荐使用MysqL_escape_string,而且我有一个PDO替代方案. Yii框架中的替代方法是什么,以及MysqL_escape_string()的PDO方式是什么?

最佳答案
PDO中MysqL_escape_string的替代方法是使用预准备语句.以Yii为例:

$user = Yii::app()->db->createCommand()
    ->select('username,password')
    ->from('tbl_user')
    ->where('id=:id',array(':id'=>$_GET['userId']))
    ->queryRow();

(来自Yii参考文档http://www.yiiframework.com/doc/api/1.1/CDbCommand)

通过准备语句中的占位符传递参数时,可以保护您免受sql注入.

猜你在找的MySQL相关文章