2017-02-09 2 views
0

Возможно ли получить доступ к глобальной переменной из $ OUTPUT или $ PAGE в /admin/settings.php?Moodle: Доступ к глобальным переменным на страницах настроек тем

Я попытался var_dump на них, но я получаю что-то вдоль линий:

объекта (bootstrap_renderer) # 3 (5) {[ "Инициирование": защищаемого] => BOOL (ложного) [ "opencontainers ": protected] =>

ответ

0

Переменные, которые вы хотите получить, если я понимаю, являются полями объекта $PAGE. Вы не можете напрямую обращаться к этим полям, потому что они защищены (вы можете увидеть это в классе, определяющем $PAGE в /lib/pagelib.php). Однако вы можете получить доступ к их значению с помощью немного другого синтаксиса: если переменная имеет имя $_myvariable, вы можете получить к ней доступ с $PAGE->myvariable (не считая подчеркивания).

Пример: вы хотите получить доступ к $_pagetype, $_url и $_navigation, использование:

$test = $PAGE->pagetype; 
$test1 = $PAGE->url; 
$test2 = $PAGE->navigation; 

Переменные (поприщами) $OUTPUT объекта также защищены, и я не нашел способ доступа к ним, хотя , Здесь вы, вероятно, можете изменить рендер, привязанный к переменной $ OUTPUT, и реализовать публичные функции, возвращающие ваши поля.

Смежные вопросы