Вот что я делаю, когда мне нужны «константы», которые нужно переопределить (как бы забавно это не звучало):
// somewhere in your global file
function config($key, $value) {
$GLOBALS[$key] = $value;
}
function conf($key) {
return $GLOBALS[$key];
}
function configured($key) {
return isset($GLOBALS[$key]);
}
Теперь, когда вам нужно определить «константу», просто используйте:
config('SHOW_AVATAR', true);
Когда вам нужно получить к нему доступ, используйте:
if(conf('SHOW_AVATAR') === true)
echo "AVATAR";
Если вам нужно проверить, определено ли оно уже, используйте:
if(configured('SHOW_AVATAR'))
echo "Setting set";
Почему я использую это? Потому что это похоже на функцию define () в моем коде. Это облегчает отделение настроек от переменных. Я в основном использую его в своих частичных представлениях, где мне нужна переменная с глобальной областью действия (например, константы), но я могу переопределить ее в любое время.
Надеюсь, это поможет вам.