Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Yii:控制器中的访问控制和过滤器之间的区别_Php_Yii_Yii Components - Fatal编程技术网

Php Yii:控制器中的访问控制和过滤器之间的区别

Php Yii:控制器中的访问控制和过滤器之间的区别,php,yii,yii-components,Php,Yii,Yii Components,yii中这两个组成部分的主要区别是什么。他们的目的在我看来是一样的。如果访问控制用于限制某些类型的用户执行特定操作,则过滤器还可以停止特定用户的操作执行,即,如果用户未通过身份验证 对我来说似乎是一样的,谁能为我清楚地区分它 accessControl的目标是授权,但过滤器可以检查请求,例如,如果请求类型是POST,访问控制的目标是管理访问控制,则运行操作。它有一个准备好的机制。过滤器更灵活-它们可以在操作之前或之后运行,它们可以转换输入,它们可以测量和记录花费的时间,它们可以拒绝格式错误的请求

yii中这两个组成部分的主要区别是什么。他们的目的在我看来是一样的。如果访问控制用于限制某些类型的用户执行特定操作,则过滤器还可以停止特定用户的操作执行,即,如果用户未通过身份验证


对我来说似乎是一样的,谁能为我清楚地区分它

accessControl
的目标是授权,但
过滤器可以检查请求,例如,如果请求类型是
POST
,访问控制的目标是管理访问控制,则运行操作。它有一个准备好的机制。过滤器更灵活-它们可以在操作之前或之后运行,它们可以转换输入,它们可以测量和记录花费的时间,它们可以拒绝格式错误的请求。。。是的,如果您真的想推出自己的访问控制机制,它们也可以用于访问控制。@d我理解这两个组件的用途。这就像CActiveRecord的beforeSave()和afterSave()方法一样?我们可以在action get执行之后/之前转换数据,甚至可以阻止它执行。是的,这是一个合理的比较。实际上,访问控制是一个过滤器。在动作执行之前运行的程序。正如DCoder所解释的:过滤器可以用于许多不同的事情,在操作执行之前或之后。访问控制是一种专门的过滤器实现,用于解决特定的用例。