过滤Yii中的用户输入

过滤Yii中的用户输入,yii,yii-extensions,yii-components,Yii,Yii Extensions,Yii Components,我阅读了关于数据验证的Yii教程,但有一个问题:我如何能够自动过滤用户输入(例如,我知道,标识符必须被修剪,或者标识符必须是整数) 是否有任何最佳做法?是否要在验证之前进行筛选?或者是否要验证id是否为整数等。如果要对输入应用特定转换,可以指定验证规则,或在验证前使用,/验证后使用。我想在验证前进行筛选,你说得对。此外,我可以不验证数据,只为我的目的过滤它们。DCoder,但我必须在纯代码中指定所有转换?难道没有Zend_Filter子类的类似物吗?我个人不同意Zend_Filter应该在验证之

我阅读了关于数据验证的Yii教程,但有一个问题:我如何能够自动过滤用户输入(例如,我知道,标识符必须被修剪,或者标识符必须是整数)


是否有任何最佳做法?

是否要在验证之前进行筛选?或者是否要验证id是否为整数等。如果要对输入应用特定转换,可以指定验证规则,或在验证前使用
/
验证后使用
。我想在验证前进行筛选,你说得对。此外,我可以不验证数据,只为我的目的过滤它们。DCoder,但我必须在纯代码中指定所有转换?难道没有Zend_Filter子类的类似物吗?我个人不同意
Zend_Filter
应该在验证之前运行的观点。如果用户在数字字段中输入了
1,2e3
,并且您的系统将其过滤为
123
1200
1
,而不是拒绝,您确实应该期待用户投诉。首先,使用验证器规则(大多数是预先制定的)确保输入格式正确,然后,如果必须,在验证后应用一些过滤,将属性强制转换为正确的数据类型/格式,然后执行所有数据处理。没有像Zend_Filter那样准备好的过滤器,你必须自己制作。