好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Drupal 自定义权限验证 代码

function custom_module_access($array) {

$flag = FALSE;

foreach($array as $value) {

$flag =$flag || user_access($value);

}

return $flag;

}

function custom_module_access($array) {

global $user;

static $perm = array();

if ($user-&gt;uid == 1) {

return TRUE;

}

if (!isset($perm[$user-&gt;uid])) {

$result = db_query("SELECT p.perm FROM {role} r INNER JOIN {permission} p ON p.rid = r.rid WHERE r.rid IN (" . db_placeholders($user-&gt;roles) . ")", array_keys($user-&gt;roles)); $perms = array();

while ($row = db_fetch_object($result)) {

$perms += array_flip(explode(', ', $row-&gt;perm));

}

$perm[$user-&gt;uid] = $perms;

}

$result_intersect = array_intersect(array_values($perm[$user-&gt;uid]), array_keys($array));

if (empty($result_intersect)) {

$flag = FALSE;

}

else {

$flag = TRUE;

}

return $flag;

}

查看更多关于Drupal 自定义权限验证 代码的详细内容...

  阅读:47次