【发布时间】:2013-08-25 10:33:08
【问题描述】:
yii. 这两个组件之间的主要区别是什么?他们的目的在我看来是一样的。如果使用访问控制来限制某些类型的用户执行特定操作,则过滤器还可以停止执行特定用户的操作,即如果用户未通过身份验证。
在我看来,任何人都可以为我清楚地区分它。
【问题讨论】:
-
访问控制旨在管理访问控制。它带有为此准备好的机制。过滤器更灵活 - 它们可以在操作之前或之后运行,可以转换输入,可以测量和记录所花费的时间,可以拒绝格式错误的请求...是的,它们还可以用于访问控制,如果您真的想为此推出自己的机制。
-
@DCoder 我了解这两个组件的用途。那么它就像 CActiveRecord 的 beforeSave() 和 afterSave() 方法一样吗?我们可以在动作执行之后/之前转换数据,甚至可以停止执行。
-
是的,这是一个合理的比较。
-
其实访问控制就是一个过滤器。在执行操作之前运行的一种。正如 DCoder 解释的那样:过滤器可用于许多不同的事情,在执行操作之前或之后。访问控制是一种专门用于解决特定用例的过滤器实现。
标签: php yii yii-components