【发布时间】:2013-07-18 11:10:09
【问题描述】:
我看过很多关于这个主题的问题,但没有一个涉及我的情况。
我正在构建一个基于 5 个类的 ACL 模块:
- 角色
- 特权
- 组
- 包装器(猜猜它的作用..)Privilege、Role 和 Group 类的工厂
- 用于组/角色的 AccessList 存储(基于使用和案例)
我正在考虑使用SplQueue来存储权限级别(主要用于继承的权限)所以我正在考虑使用单个对象来存储所有内容并且不认为普通的多维数组将是最佳选择.流程类似于 this paste,它是 TL;DR.. 抱歉。
所以我的问题是,在我的情况下,SplQueue 会不会有点过头了?
我应该使用和替代 Spl 数据结构,如果可以,是哪一种?
编辑 好吧,我想不出一个很好的用法示例,所以让我们继续使用基于 UNIX 的 GBAC。
【问题讨论】:
-
数据结构应该支持在其上执行的操作的用例。你没有提到任何一个。
-
目的很笼统,等我写完,一会更新
-
我认为这对于小型阵列来说确实是矫枉过正。 (小是低于 100-1000 个元素)。内部哈希图主要提供足够快的访问。当您确实需要 log(n) 访问和插入时间等时,SPL 很好。
-
嗯,我猜你是对的。普通的 ACL 应该可以在任何级别的 PHP 应用程序中发挥作用。那么这里是代表:D
-
我建议你用你是如何进行的回答你自己的问题。