2

检查会员是否在 Joomla 中签名的最佳(从长远来看最快/最安全/更好)的方法是什么。

1#方式:$user =& JFactory::getUser(); if($user->id!=0){

2种方法:$user =JFactory::getUser()->guest;

或其他方式?

这些是自定义脚本的片段,用于检查用户是否是来宾以告诉他注册以及他是否登录以欢迎他。

我正在使用 Joomla 2.5

我已经阅读了Joomla 2.5 检查用户登录的内容,根据我使用的 php 版本,某些代码会有所不同?我很困惑。

谢谢

4

3 回答 3

2

假设您正在运行 PHP 5.3,您可以使用其中任何一种,但是,如果您正在运行低于该版本的任何内容,则使用:

$user = JFactory::getUser(); 

if($user->id!=0){
    //your code goes here
}

就个人而言,我会选择第二种方法,因为它通过 Joomla API 并且更彻底。

附带说明,如果您确实使用第一种方法,则可以删除&.

于 2013-08-17T00:02:58.277 回答
1

/* 显示当前登录用户的一些信息,但仅在用户实际登录时显示。 */

$user =& JFactory::getUser();

if (!$user->guest) {
  echo 'You are logged in as:<br />';
  echo 'User name: ' . $user->username . '<br />';
  echo 'Real name: ' . $user->name . '<br />';
  echo 'User ID  : ' . $user->id . '<br />';
}
于 2013-08-17T06:12:32.007 回答
1

对于 Joomla,有两种方法可以检查用户是否已登录

$user = JFactory::getUser();

if($user->guest = 1){
//User in not logged in
}
else
{
//User is logged in
} 

或者第二个是

$user = JFactory::getUser();

if($user->id != 0){
//User is logged in
$id = $user->id; // You can use this ID for further Use
}
else
{
//User is no logged in

} 

我个人更喜欢第二个,因为它同时满足两个可用性。

于 2016-09-14T03:13:32.097 回答