..
Começamos por explicar o que entendemos por filtragem dinâmica.
Com esta expressão nos referimos a esse mecanismo para disponibilizar aos nossos classes / scripts filtrada propriedades comuns, mas em relação ao ambiente em que estamos trabalhando (local, teste de produção).
É um mecanismo comum em Java, mas não em PHP pela simples razão de que o conceito de implantação, como comumente entendido, não está associado com a nossa língua amada. E 'na verdade scripts de teste bastante comum no local e depois copiar os arquivos via ftp em nosso teste, ou (pior) diretamente sobre a produção.
No local de trabalho, no entanto, é muito útil para ter filtrado automaticamente dependendo das propriedades que o nosso aplicativo deve ser executado em localhost ou em outras máquinas (como frontend, expostos para o exterior), portanto, neste artigo vamos criar um quadro único para implementar esse tipo de lógica em um projeto PHP nosso hipotético.
Para fazer isso nós não iremos usar pacotes externos, ou abstrações especiais que precisamos é um XML, uma classe PHP e arquivos de texto.
A idéia é definir no arquivo xml para nossas propriedades comuns, criar um arquivo para cada ambiente para melhorá-los e escrever um código que coloca todos juntos. A estrutura da nossa aplicação de teste será:
Aqui está a estrutura básica:

Vamos ver como o arquivo é composto por:
<? Xml version = "1.0" encoding = "utf-8"?> <properties> <property name="__app_version" value="0.0.1" /> <property name="messaggio_variabile" value="" /> <property name="url_servizio_esterno" value="" /> <property name="local" value="localhost" /> <property name="test" value="test.qualchedominio.it" /> <property name="pro" value="prod.qualchedominio.it" /> </ Properties>
Além das tags XML usual definir o documento que inicia um recipiente <properties> tag para que inserir um conjunto de <property> tags, os três primeiros são os que servirão no exemplo, os três últimos são relacionados para hospedar e servir vários PHP ambiente para entender o que estamos operando dinamicamente.
Aqui nós deine local ambientes de teste e de produção, mas nada impede que você definir outros, como dev.
Para cada um dos quartos é mostrada uma URL base, cujo valor de acordo com nossas necessidades, a aplicação por aplicação.
Em nosso cenário, temos uma máquina de teste de alcançar "URL test.qualchedominio.it e um poço de produção de prod.qualchedominio.it curso alcançado em localhost.
O próximo passo é certificar-se que as propriedades definidas no XML são avaliados de maneira diferente dependendo do ambiente "onde estamos. Usamos para este fim de arquivos de texto nos filtros pasta, vamos ver o conteúdo por um:
; [LOCAL] Filtro de propriedades messaggio_variabile = "Nós LOCAL" url_servizio_esterno = http://dev-servizio.esterno.it
; [TEST] Filtro de propriedades messaggio_variabile = "Nós TEST" url_servizio_esterno = http://test-servizio.esterno.it
; [PRO] Filtro de propriedades messaggio_variabile = "PRODUÇÃO Nós" url_servizio_esterno = http://prod-servizio.esterno.itit
Observe que a propriedade "__app_version", definido em XML, não é redefinido em diferentes arquivos, ele será tratado para todos os efeitos como uma propriedade comum entre os vários ambientes e imutável, então não será filtrada.
| |
Linux (Curso)
Guia completo para open-source do sistema. A partir de 49 €. |
| |
MySQL (Curso)
Gestão de banco de dados open-source. A partir de 39 €. |
| |
PHP (Curso)
Curso completo para a criação de sites dinâmicos. A partir de 49 €. |