类函数中的全局变量

时间:2014-08-03 19:58:31

标签: php class global

我制作了一个irc twitch bot,我已经实现了多线程,但它引起了一些错误。

我的问题是我有功能,例如:

function isMod($username){
global $mods;

if(in_array($username,$mods) !== FALSE){
    return true;
}

return false;
}

但是,如果我从一个类调用该函数" global"标签接缝不起作用,因此$ mods将保持为空。我该如何解决?

我尝试过使用

$globals['mods']

但它也不适合工作。

我可以像

那样做
function isMod($username, $mods){

if(in_array($username,$mods) !== FALSE){
    return true;
}

return false;
}

但我想避免这种情况。

1 个答案:

答案 0 :(得分:0)

如果您真的想要使用全局变量,请尝试使用$GLOBALS['mods']

function isMod($username){
    if(in_array($username,$GLOBALS['mods']) !== FALSE){
        return true;
    }

    return false;
}

$GLOBALS['mods'] = array('joe');

class Test {
    function foo(){
        var_dump(isMod('joe'));
    }
}

$test = new Test();
$test->foo();

$GLOBALS随处可用,就像例如$_GET