2011-08-03 98 views
0

我正在使用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 ,我在一個類中構建我的圖,所以我不能使用全局變量$格式。有一種方法可以在類之外訪問var $格式嗎?謝謝。

+1

有趣的標題... – nickf

+0

風車。他們無處不在。 – Gordon

回答

0

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

傳遞$格式功能到$ GLOBALS陣列控制器類中

$GLOBALS['format'] = $format; 

然後FCallback功能中,您需要使用反向搶變量。

$format = $GLOBALS['format']; 
+0

該死!非常簡單...非常感謝,我的問題很抱歉,我搜索了但沒有用正確的單詞。 –

+0

不用擔心朱利安 – Boz