2

ログインしたユーザータイプ(スーパー管理者、登録済みなど)を取得しようとしています。私はこのコードを試しました:

$user =& JFactory::getUser();
$curref = $user->usertype();

これにより、関数が見つからないというエラーが発生します。可能であればdbクエリを使用せずに、ユーザータイプ名を取得する正しい方法は何ですか。

4

1 に答える 1

6

ユーザータイプをメソッドではなくメンバーとして扱う必要があります。

$type = $user->usertype;

ドキュメント:http ://docs.joomla.org/Accessing_the_current_user_object

var_dumpを実行すると、$userオブジェクトの構造を確認できます。これを試して、出力を調べてください。

var_dump( $user );

したがって、groups配列を反復処理する場合は、次のようにすることができます。

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

var_dump( $groupIDs );

いくつかのjoomlaメソッドを使用して、さまざまな方法でグループを返すこともできます。このフォーラムスレッドをチェックすることをお勧めします:http: //forum.joomla.org/viewtopic.php? t = 530721

于 2012-09-08T23:33:19.623 に答える