其实在ZF的Reference Guide 里面关于Acl的介绍挺清晰的只是看懂了去不会用,我也搜过不少资料,包括一些外文的,但是收获甚微, 最后总结了一下,但是呢,用的对不对我也不敢保证,但至少应付我们这个小项目还是没问题的,如果你有更好的办法,请提供给我~~~
我们首先创建一个Model_Acl类
这样一个简单的Acl我们就创建成功,下面是应用,我们在StudentController.php添加代码
init()在我们访问一个Controller时首先会被执行,所以它会正在所有Action之前创建好了acl列表,当我们想要控制某一个action是否能被访问时只需要在相应的action添加如下代码即可:
这样我们就能判断这个action是否允许访问,如果禁止则跳转,为了使上面代码更加通用,我们可以让其自动获取controller和action的name,这样就更通用一点