Quase todos os CMS públicos por aí usam um arquivo de configuração .php para as configurações do banco de dados e assim por diante. Por exemplo, o WordPress cria automaticamente um arquivo de configuração .php quando você o instala.
Por que eles não usam apenas um arquivo .ini? O PHP já possui parse_ini_file () e tenho certeza que outras linguagens têm funções semelhantes.
fonte
relate to one well-defined, portable syntax for configuration
Eu não entendo isso. Os arquivos ini também possuem uma sintaxe bem definida e portátil. Cada.conf.php
arquivo tem sua própria estrutura, a maioria é baseada em array, mas isso não é tão diferente de um arquivo ini..ini
arquivos para armazenar configuração, sem dúvida haveria muitas instâncias mal configuradas em execução, onde a configuração era acessível ao público, o que geralmente não é uma coisa boa. Com arquivos PHP, será muito, muito raro que um servidor seja configurado incorretamente para servir o conteúdo dele a um visitante.De um modo geral, eu prefiro
.ini
ou arquivos de configuração XML. Em sistemas maiores, geralmente alguém que não seja o desenvolvedor precisará alterar um valor de configuração, possivelmente um DBA ou um administrador de sistema. A maioria dos DBAs e administradores de sistemas que conheço não teria nenhum problema em navegar por um script PHP simples, mas eu preferiria que não. Um pequeno erro pode prejudicar todo o aplicativo de várias maneiras.Mas em sistemas menores, é extremamente conveniente usar scripts PHP para configuração. Eu estava brincando com o AWS SDK hoje, que também usa um script PHP para configuração:
Em vez de codificar a
default_cache_config
, estou passando a temperatura do sistema, e isso funcionaria em todos os sistemas em que implantei o script. Esse script é uma pequena prova de conceito que será passada em torno de 10 desenvolvedores, e eu quero que eles o executem como estão, sem ter muito o que pensar. Se o protótipo evoluir, eu o conectarei com a minha classe de configuração XML (e obviamente não contarei com o cache do sistema de arquivos).fonte
A resposta é simples: um conf.php tem basicamente zero trabalho necessário para operar. É apenas outro arquivo de origem.
fonte
Velocidade sem cache também pode ser o motivo. A configuração do PHP pode ser armazenada em cache com código de código transparente, se necessário. Considerando que o arquivo INI precisa ser analisado em texto toda vez que é lido e você precisa criar o cache por conta própria. Para arquivos pequenos, tudo bem, mas com centenas de linhas analisadas em cada solicitação, pode aumentar para dezenas de milissegundos, o que é bastante para a otimização da Web de 200ms.
fonte