我正在 yii 中构建一个数据库密集型应用程序。所以性能和安全自然是一个值得关注的问题。除此之外,表单验证也是一个主要标准。为了安全起见,我计划对所有 Sql Queries 使用参数绑定。对于验证,我想使用 Yii 提供的验证器,而不是推出我自己的 . 我知道性能会受到 CActiveRecord 的影响。所以我计划为我的所有表创建 Cmodel 类,在这些各自的模型中定义验证规则,并定义函数来执行用于检索和插入数据的 sql 查询。我在网站上收集的所有数据主要是通过表单(大约 95%),如果我使用 Cformmodel ,我真的不明白 Cmodel 和 Cformmodel 之间的区别,使用其中任何一个是否会影响性能。
另外,为了防止 XSS 攻击,我想使用 HTML purify 包装器作为验证规则,因为我几乎在所有地方都读到这个包装器的性能很差,即使我将它用作验证规则,它会不会很糟糕?即使我正在净化输入,我是否应该使用 Chtml::Encode 显示我的输出文本?
我处理数据的粗略计划是:
$users= new Users() ; //Users is extending CModel , contains validation rules
$users=getdata(Yii->app->userid()) ;
if(isset('update'))
{
if($users->validate())
{$users->updatedata() ; }
}
$this->render('users','data'=>$users)