簡體   English   中英

在類外訪問全局變量

[英]Accessing a global variable outside a class

我正在使用JpGraph和CodeIgniter。 在JpGraph中,您可以定義一個回調函數來添加一些屬性。

在我的測試中,一切都正確,我使用了:

for( $i=0; $i < $n; ++$i ) 
{
$datax[$i] = $data[$i][0];
$datay[$i] = -$data[$i][1];

$format[strval($datax[$i])][strval($datay[$i])] = array($data[$i][2],$data[$i][3]);
}

然后我指定回調:

 $sp1->mark->SetCallbackYX("FCallback");

而我的功能:

function FCallback($aYVal,$aXVal) 
{
    global $format;
    return array($format[strval($aXVal)][strval($aYVal)][0],'',
     $format[strval($aXVal)][strval($aYVal)][1],'','');
}   

但是,使用CodeIgniter,我可以在一個Class中構建圖形,因此無法使用全局var $ format。 有沒有一種方法可以在類外部訪問var $ format? 謝謝。

最好找到一種將$ format變量傳遞給FCallback函數的方法,而不要使用全局范圍。 但是,如果需要,可以嘗試使用$ GLOBALS數組。

將$ format函數傳遞到控制器類中的$ GLOBALS數組中

$GLOBALS['format'] = $format;

然后在FCallback函數中,您將使用相反的方法來獲取變量。

$format = $GLOBALS['format'];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM