define('_JEXEC', 1);
define('JPATH_BASE', realpath(dirname(__FILE__)));
require_once ( JPATH_BASE .'/includes/defines.php' );
require_once ( JPATH_BASE .'/includes/framework.php' );
require_once ( JPATH_BASE .'/libraries/joomla/factory.php' );
$user = JFactory::getUser();
echo 'User name: ' . $user->username . '<br />';
echo 'Real name: ' . $user->name . '<br />';
$specificuser = JFactory::getUser(42);
echo 'Specific User name: ' . $specificuser->username . '<br />';
echo 'Specific Real name: ' . $specificuser->name . '<br />';
我在外部php文件中添加了此代码。 $specificuser
代码正在运行;但有时显示$user
输出,有时则不显示。对这个问题有什么看法吗?
输出在这里:
User name:
Real name:
Specific User name: user
Specific Real name: Super User
答案 0 :(得分:2)
JFactory::getUser()
方法加载当前用户对象:
第二种情况也适用于您登录,但会话过期。
答案 1 :(得分:1)
你没有启动Joomla!应用程序,因此会话处理和其他事情不起作用。
有关如何初始化Joomla的工作示例,请参阅my answer to a similar question!正确。