类函数中的全局变量


Global variables in class function

我做了一个irc twitch bot,我已经实现了多线程,但它已经导致了错误的抢劫。

我的问题是我有函数,例如:

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

但是有一个问题,如果我从一个类调用函数的"全局"标签接缝不工作,所以$mods将保持为空。我怎样才能修好它?

我已经尝试使用

$globals['mods']

但是它也不能工作。

我可以这样做

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

如果你真的想用全局变量,试着用$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一样