public function actionUpdate()
{
if(!$user->can('admin'){
throw DomainExeption('Вы не можете выполнить данное действие.');
}
}
Функции API mysqli_query() и mysqli_real_query() во время работы не устанавливают на сервере специальный флаг, необходимый для выполнения мультизапросов. Отдельная API-функция для мультизапросов позволяет снизить вероятность случайных SQL-инъекций. Злоумышленник может попытаться добавить в конец запроса выражения, вроде ; DROP DATABASE mysql или ; SELECT SLEEP(999). Если ему это удастся, но не будет использоваться функция mysqli_multi_query, сервер не выполнит второе внедрённое и опасное SQL-выражение.
nl2br(Html::encode($message))
<?= Yii::$app->formatter->asNtext($message) ?>
Первый способ это getRolesByUser()
\Yii::$app->authManager->getRolesByUser($user_id);
Можно создать свой метод, для получения роли(не уверен, что это хорошее решение).
Можно записывать присвоенную роль в таблицу пользователей...
Вот Вам видео в помощь для разбора работы с RBAC в YII.
И статья, в которой описано, как можно упростить работу с rbac, раз у Вас нет сложной системы распределения доступа.