В функции обратного вызова модуля Drupal есть простая пользовательская функция, которая принимает массив.
Пользовательская функция выполняется правильно, когда я определяю входной массив в функции обратного вызова модуля Drupal. Однако, когда я определяю входной массив на корневом уровне (глобальный), пользовательская функция в функции обратного вызова модуля Drupal завершается ошибкой.
В качестве теста я заставил пользовательскую функцию просто выводить содержимое входного массива в виде строки. Первый метод выводит корректно, тогда как второй метод не имеет никакого вывода. В идеале я хотел бы определить массив на глобальном уровне, чтобы его могли использовать другие функции.
Мысли
<?php
// ** Placement of array for method 2
$mapping = array(
0 => "name",
1 => "match"
);
function mymodule_menu() {
$items = array();
$items['mymodule'] = array(
'title' => 'MyModule',
'page callback' => 'myModule_main',
'access callback' => TRUE,
'type' => MENU_NORMAL_ITEM
);
return $items;
}
function myModule_main() {
// ** Placement of array for method 1
$mapping = array(
0 => "name",
1 => "match"
);
$output = myFunction($mapping);
echo $output; // ** Returned to client side via AJAX
}