yii\rbac\DbManager::getPermissionsByUser PHP Method

getPermissionsByUser() public method

public getPermissionsByUser ( $userId )
    public function getPermissionsByUser($userId)
    {
        if (empty($userId)) {
            return [];
        }
        $directPermission = $this->getDirectPermissionsByUser($userId);
        $inheritedPermission = $this->getInheritedPermissionsByUser($userId);
        return array_merge($directPermission, $inheritedPermission);
    }

Usage Example

Beispiel #1
0
 public function getPermissionsTree($userId = 0)
 {
     if ($userId) {
         $pms = parent::getPermissionsByUser($userId);
     } else {
         $pms = parent::getPermissions();
     }
     $menu = $this->getMenu();
     $tree = [];
     foreach ($menu as $m => $sms) {
         if (!array_key_exists($m, $pms)) {
             continue;
         }
         $_ = ['name' => $pms[$m]->description, 'subMenus' => []];
         foreach ($sms as $sm) {
             if (!array_key_exists($sm, $pms)) {
                 continue;
             }
             $_['subMenus'][$sm] = $pms[$sm]->description;
         }
         $tree[$m] = $_;
     }
     return $tree;
 }