जवाबों:
यह काफी के साथ सीधा है () user_roles और array_search () । नीचे एक फ़ंक्शन है जो नाम और FALSE मिलान करने वाली भूमिका होने पर रोल आईडी लौटाएगा अन्यथा।
function get_role_by_name($name) {
$roles = user_roles();
return array_search($name, $roles);
}
// Sample usage
$rid = get_role_by_name('administrator');
एक लाइनर होगा:
$rid = array_search('administrator', user_roles());
भूमिका के मशीन नाम को जानने के बाद, यह उपयोग करने के लिए पर्याप्त है user_role_load_by_name()
।
if ($role = user_role_load_by_name('Role Name')) {
// The role ID is in $role->rid.
}
यदि भूमिका मौजूद नहीं हो सकती है ...
$role = user_role_load_by_name('Role Name');
$role_id = $role ? $role->rid : NULL;
भूमिका और उसकी आईडी की पहचान करने का सबसे अच्छा तरीका एसक्यूएल है। इस क्वेरी को अपने SQL संपादक में चलाएँ।
select * from roles;
और आपको आईडी और वजन सहित रोल्स की सूची मिल जाएगी।