Câu trả lời:
Điều này khá đơn giản với user_roles () và Array_search () . Dưới đây là một hàm sẽ trả về ID vai trò nếu có một vai trò khớp với tên và FALSE nếu không.
function get_role_by_name($name) {
$roles = user_roles();
return array_search($name, $roles);
}
// Sample usage
$rid = get_role_by_name('administrator');
Một lớp lót sẽ là:
$rid = array_search('administrator', user_roles());
Biết tên máy của vai trò, nó là đủ để sử dụng user_role_load_by_name()
.
if ($role = user_role_load_by_name('Role Name')) {
// The role ID is in $role->rid.
}
Nếu Vai trò có thể không tồn tại ...
$role = user_role_load_by_name('Role Name');
$role_id = $role ? $role->rid : NULL;
Cách tốt nhất để xác định vai trò và id của nó là từ SQL. Chạy truy vấn này trong trình soạn thảo SQL của bạn.
select * from roles;
Và bạn sẽ nhận được danh sách Vai trò bao gồm id và trọng lượng.