Каков наилучший способ сохранить конфигурационные переменные в веб-приложении PHP? - PullRequest
41 голосов
/ 16 сентября 2010

Я часто переключаюсь между .NET и PHP разработкой.На сайтах ASP.NET я сохраняю информацию о конфигурации (например, строки подключения, каталоги, настройки приложения) в файле web.config , который надлежащим образом защищен и имеет простой доступ к значениям и т. Д.

В PHP я решаю это с помощью класса , который имеет статические методы для каждой переменной:

class webconfig {
    public static function defaultPageIdCode() {
        return 'welcome';
    }
}

Файл Доступ к переменным приложения осуществляется через одну строку:

$dp = webconfig::defaultPageIdCode();

А так как PHP не скомпилирован, легко telnet войти и изменить значение длясайт в любом случае, так что это решение работает довольно хорошо и дает мне эти два преимущества :

  • Я могу добавить логику кПеременная config, не нарушая ее интерфейс с приложением
  • эти переменные конфигурации отображаются как intellisense в моем, например, Eclipse, NetBeans и т. д.

Но я могу представить себе тамдругие способы решить проблему сохранения настроек веб-конфигурации в PHP, которые могутесть и другие преимущества.

Особенно у тех, кто имеет опыт работы с несколькими PHP-фреймворками, каковы другие способы сохранения конфигурационных переменных, их преимущества и недостатки?

Ответы [ 11 ]

0 голосов
/ 16 сентября 2010

Обычный маршрут - использовать define:

define('MYSQL_USER', 'ROOT');

и обращаться к нему по всему приложению через MYSQL_USER:

$user = MYSQL_USER;

Однако массивы не поддерживаютсяспособ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...