使用逻辑运算符检查权限时Zend_Acl内存故障

时间:2012-06-06 10:57:16

标签: zend-framework zend-acl

我正在尝试实现自定义的Acl Assert。

if($acl->isAllowed($role,$resource,$privilege.':all')) {
   return true; 
}

工作正常。但

if(($acl->isAllowed($role,$resource,$privilege.':all')) 
     || ($acl->isAllowed($role,$resource,$privilege))) {
     return true; 
}

抛出一个

致命错误:第837行的........ \ library \ Zend \ Acl.php中允许的内存大小为134217728个字节(试图分配261904个字节)

1 个答案:

答案 0 :(得分:0)

我有类似的问题。我已经从我的模型和

中评论了所有ACL断言
  

致命错误:允许的内存大小为134217728字节耗尽(尝试过   在/var/www/project/library/Zend/Acl.php中分配261900个字节)   第1109行

成了

  

致命错误:允许的内存大小为134217728字节耗尽(尝试过   分配261900个字节)   第17行的/var/www/project/application/models/User.php

这真的意味着ACL没有错 - 我在无限递归调用中调用了一个函数。