在Joomla component开发中,经常会用到系统级别的权限控制,ACL就是做这个用处的。

这里举一个小例子,展示Joomla ACL的使用方法,仅当备忘。

PHP代码
  1. $acl = &JFactory::getACL();   
  2. $acl->addACL( ‘com_swimtool’‘manage’‘users’‘super administrator’ );   
  3. //$acl->addACL( ‘com_swimtool’, ‘manage’, ‘users’, ‘administrator’ );   
  4. //$acl->addACL( ‘com_swimtool’, ‘manage’, ‘users’, ‘manager’ );   
  5.   
  6. $user = & JFactory::getUser();   
  7. if (!$user->authorize( ‘com_swimtool’‘manage’ )) {   
  8.     $mainframe->redirect(‘index.php’, JText::_(‘ALERTNOTAUTH’));   
  9. }   

这里,先用JFactory获取ACL的对象,再添加ACL规则,最后验证,验证失败则给出失败信息,不允许访问资源。