Определить глобальный массив в файле app_config

У меня есть файл конфигурации приложения, который объявляет глобальные переменные с помощью DEFINE:

define('BASE_DOMAIN', 'localhost/...');

define('BASE_URL', '//'.BASE_DOMAIN);
define('TMP_PATH', $_SERVER['DOCUMENT_ROOT'].'/app/tmp')

Я также использую плагин Media, который имеет три стандартных размера изображения, объявленных следующим образом:

$s = array('convert' => 'image/png', 'zoomCrop' => array(100, 100));
$m = array('convert' => 'image/png', 'fitCrop' => array(300, 300));
$l = array('convert' => 'image/png', 'fit' => array(600, 440));

Мне просто интересно, могу ли я каким-то образом объявить эти значения глобальными в конфигурации приложения, например. замените 'zoomCrop' => array(100, 100)' выше на переменную, определенную в конфигурации приложения.

Я пробовал это (не работает): настройка приложения

$GLOBALS['RES_ZOOM_CROP'] = array(25, 25);
$GLOBALS['RES_FIT_CROP'] = array(300, 300);
$GLOBALS['RES_FIT'] = array(600, 440);

Плагин

$s = array('convert' => 'image/png', 'zoomCrop' => RES_ZOOM_CROP));
$m = array('convert' => 'image/png', 'fitCrop' => RES_FIT_CROP));
$l = array('convert' => 'image/png', 'fit' => RES_FIT));

person Cronin O'M    schedule 08.02.2012    source источник
comment
Вы не можете определять массивы. Для массивов вы можете использовать сессию или глобальную переменную $array_name.   -  person YamahaSY    schedule 08.02.2012


Ответы (2)


В вашем примере объявляются три глобальные переменные, а затем используются три неопределенных константы, он должен работать, когда вы меняете плагин на это:

$s = array('convert' => 'image/png', 'zoomCrop' => $GLOBALS['RES_ZOOM_CROP']));
$m = array('convert' => 'image/png', 'fitCrop' => $GLOBALS['RES_FIT_CROP']));
$l = array('convert' => 'image/png', 'fit' => $GLOBALS['RES_FIT']));
person Stephan B    schedule 08.02.2012

Рассмотрите возможность использования класса Configure для записи «глобальных» переменных, которые будут доступны во всем приложении. Константы и определенные массивы переменных не поддерживаются.

person Barry Chapman    schedule 08.02.2012