我正在为登录用户搜索用户角色,但我不知道如何打印用户角色名称。我试过这个:
$Role = Yii::$app->authManager->getRolesByUser(Yii::$app->user->getId());
什么时候,我做到了print_r($Role)
;我懂了 :
Array ( [superadmin] => yii\rbac\Role Object ( [type] => 1 [name] => superadmin [description] => Super admin can do any operation in the application [ruleName] => [data] => [createdAt] => [updatedAt] => ) )
我正在寻找特定的角色名称,但我无法访问
Array ( [superadmin] => yii\rbac\Role Object ........)
^ unable to access this name.
输入时print_r($Role[0]->name);
出现错误,例如
PHP 通知 – yii\base\ErrorException
未定义的偏移量:0
而且,如果我喜欢这种方式(意味着手动传递$rolename
给数组索引)它正在工作。
$roleName = 'superadmin';
print_r($Role[$roleName]->name);
为什么这个要求来找我,因为登录用户没关系。但是,如果我想知道其他用户角色名称,那么我需要将索引名称传递到这里$Role[$roleName]->name
请帮助我访问这个“超级管理员”。我不知道如何获取它的索引名称。
Array ( [superadmin] => yii\rbac\Role Object
^ unable to access this name.