Доступ к глобальной переменной вне класса - PullRequest
0 голосов
/ 03 августа 2011

Я использую 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 $. Есть ли способ получить доступ к формату var $ вне класса? Спасибо.

1 Ответ

0 голосов
/ 03 августа 2011

Лучше всего найти способ передачи переменной $ format в функцию FCallback, а не использовать глобальную область видимости.Но, если вам нужно, вы можете попробовать использовать массив $ GLOBALS.

Передать функцию $ format в массив $ GLOBALS в вашем классе контроллера

$GLOBALS['format'] = $format;

Затем в функции FCallback выперехватит переменную, используя обратное.

$format = $GLOBALS['format'];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...