如何在呈现页面之前在mediaWiki中获取登录用户名


how to get logged in user name in mediaWiki before the page is rendered?

你好,我正在破解ApprovedRevs的mediaWiki扩展,我正在使用mediaWiki 1.16

基本上,我需要知道mediaWiki中当前登录用户的名称,该函数是在UnknownAction钩子被触发时执行的,

我知道我可以访问登录的用户名$wgUser->mName$wgUser是一个全局变量,但我得到的是一个空字符串

我在皮肤文件(vector.php)中进行了打印,它包含了那里的所有信息,但当我在我正在处理的函数中进行打印时,我得到了这个:

StubUser Object
(
    [mGlobal] => wgUser
    [mClass] => 
    [mParams] => Array
        (
        )
)

也就是说它是空的,所以有人能告诉我该怎么办吗?

应该使用对象的getName方法(如$wgUser->getName()),而不是直接访问属性。

这是因为该对象最初是存根对象。这意味着在第一次方法调用之前不会加载数据。您可以在StubObject上查看参考文档。