检查成员是否在Joomla中签名的最佳方式(最快/最安全/更长远)是什么。
1#way:$user =& JFactory::getUser();
if($user->id!=0){
2#way:$user =JFactory::getUser()->guest;
或其他方式?
这些是自定义脚本中的片段,用于检查用户是否是告知他注册的访客,以及他是否登录以欢迎他。
我正在使用Joomla 2.5
我在Joomla 2.5 check user logged in上读过一些代码根据我使用的php版本而有所不同?我很困惑。
由于
答案 0 :(得分:2)
您可以使用假设您运行的是PHP 5.3,但是,如果您运行的是以下任何内容,请使用:
$user = JFactory::getUser();
if($user->id!=0){
//your code goes here
}
就个人而言,我会选择第二种方法,因为它通过了Joomla API并且更加彻底。
另外,如果您使用第一种方法,则可以删除&
。
答案 1 :(得分: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 />';
}
答案 2 :(得分: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
}
我个人更喜欢第二个,因为它同时满足两个可用性。