本文整理汇总了PHP中AllPermissionsOptimizationUtil::checkPermissionsHasAnyOf方法的典型用法代码示例。如果您正苦于以下问题:PHP AllPermissionsOptimizationUtil::checkPermissionsHasAnyOf方法的具体用法?PHP AllPermissionsOptimizationUtil::checkPermissionsHasAnyOf怎么用?PHP AllPermissionsOptimizationUtil::checkPermissionsHasAnyOf使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AllPermissionsOptimizationUtil
的用法示例。
在下文中一共展示了AllPermissionsOptimizationUtil::checkPermissionsHasAnyOf方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: checkPermissionsHasAnyOf
public function checkPermissionsHasAnyOf($requiredPermissions, User $user = null)
{
assert('is_int($requiredPermissions)');
assert('in_array($requiredPermissions,
array(Permission::READ, Permission::WRITE, Permission::DELETE,
Permission::CHANGE_PERMISSIONS, Permission::CHANGE_OWNER))');
if ($user == null) {
$user = Yii::app()->user->userModel;
}
if (Permission::ALL == $this->resolveEffectivePermissionsForOwnerAndCreatedByUser($user)) {
return;
} elseif ($this->isDeleting) {
//Avoid potential problems with accessing information already removed from munge.
//Potentially there could be some gap with doing this, but it improves performance on complex
//role/group setups.
return;
} else {
if (SECURITY_OPTIMIZED) {
$modelClassName = get_called_class();
$moduleClassName = $modelClassName::getModuleClassName();
if (static::hasReadPermissionsOptimization() && $moduleClassName != null && is_subclass_of($moduleClassName, 'SecurableModule') && AllPermissionsOptimizationUtil::checkPermissionsHasAnyOf($requiredPermissions, $this, $user)) {
return;
}
}
parent::checkPermissionsHasAnyOf($requiredPermissions, $user);
}
}