使用PHP获取Joomla的用户类型

A S*_*ith 2 php joomla1.6 joomla1.7 joomla2.5

我正在尝试登录用户类型(例如超级管理员,已注册).我试过这段代码:

$user =& JFactory::getUser();
$curref = $user->usertype();
Run Code Online (Sandbox Code Playgroud)

这给出了一个没有找到错误的功能.获取用户类型名称的正确方法是什么,如果可能,不使用db查询.

Mat*_*rte 6

您只需将usertype视为成员,而不是方法.

$type = $user->usertype;
Run Code Online (Sandbox Code Playgroud)

文档:http://docs.joomla.org/Accessing_the_current_user_object

您可以通过执行var_dump来查看$ user对象结构.试试这个,并检查输出:

var_dump( $user );
Run Code Online (Sandbox Code Playgroud)

因此,如果要迭代groups数组,可以执行以下操作:

$groupIDs = array();
foreach( $user->groups as $groupID ){
  $groupIDs[] = $groupID;
}

var_dump( $groupIDs );
Run Code Online (Sandbox Code Playgroud)

您还可以使用一些joomla方法以不同的方式返回组.您可以查看此论坛帖子:http://forum.joomla.org/viewtopic.php?t = 530721