By andypost on
Change record status:
Published (View all published change records)
Project:
Introduced in branch:
10.2.x
Introduced in version:
10.2.0
Issue links:
Description:
- user_roles() can often be replaced with Role::loadMultiple()
- user_role_names() can be replaced with array_map() withing result of Role::loadMultiple()
before
$roles = user_roles();
...
$roles = user_roles(TRUE, 'module_test perm')
...
$names = user_role_names(FALSE, $permission)
after
use Drupal\user\Entity\Role;
use Drupal\user\RoleInterface;
$roles = Role::loadMultiple();
...
$roles = Role::loadMultiple();
unset($roles[RoleInterface::ANONYMOUS_ID]);
$roles = array_filter($roles, fn(RoleInterface $role) => $role->hasPermission('module_test perm'));
...
$roles = array_filter(Role::loadMultiple(), fn(RoleInterface $role) => $role->hasPermission($permission));
$names = array_map(fn(RoleInterface $role) => $role->label(), $roles);
Impacts:
Module developers