На самом деле, вас интересуют значения аргументов доступа, где обратный вызов доступа равен «user_access» (значение по умолчанию); поскольку модуль может использовать другой обратный вызов доступа, значения аргументов доступа теоретически могут быть бесконечными.
Альтернативой вызову всех реализаций hook_permission()
является использование кода, подобного следующему:
$permissions = array();
db_query("SELECT permission FROM {role_permission}");
foreach ($result as $row) {
$permissions[$row->permission] = TRUE;
}
array_keys($permissions)
предоставит вам список всех разрешений.
Я получил запрос от user_role_permissions () ; разница в том, что функция заинтересована в разрешениях, связанных с ролью, передаваемой в качестве аргумента.