我打算在我的 php 网站中实现 ACL(访问控制列表)。
在我的系统中,用户具有角色和权限的总和。
主要算法如下:
permissions = (permissions_by_role + permission_for_user) - user_banned_permission
所以我有三个数组并从数据库中获取这些值。
第一部分我用这个
$permissions = array_unique(array_merge($permission_by_role, $permission_by_user));
如何从权限数组中删除我禁止的权限? 现在我有这两个数组:
$permissions and $permission_banned_for_user[]
最佳答案
听起来像是 array_diff 的完美用例:
$permissions = array_diff($permissions, $permission_banned_for_user);
关于php - 计算(设置)PHP 中数组之间的差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7510005/