Пишу консольное приложение на PHP 7, будет работать как демон. Решил yii там не использовать, так как он там излишен.
Так вот, всю архитектуру продумываю с нуля (до этого всегда писал на йии и других фреймах, поэтому писать полностью с нуля оказалось не просто). И задался вопросом где хранить конфиг.
Хотел создать отдельный класс Config с get, как многие и рекомендуют. Но тут узнал, что в пхп7 можно в define вставить массив. Мне это показалось очень удобным, ведь теперь можно сделать так:
Код: Выделить всё
define(
'CONFIG',
['db' => ['host'=>'localhost', 'user'=>'root', 'password'=>'']]
);
echo CONFIG['db']['host'];
Вставить эту константу во входном скрипте и вуаля она доступна везде в приложении, что очень удобно. Такой типа аналог Yii::$app->params доступный везде, только без лишнего кода.
Так вот вычитал, что хранить конфиг в константах это типа плохой тон и всё такое. Ну ладно я понимаю, когда констант кучу наплодили, под каждый параметр отдельная константа, но тут то по сути только одна константа-массив и всё. И собственно вопрос, чем плохо моё решение и плохо ли вообще?