..
Wir beginnen mit der Erklärung, was wir durch die dynamische Filterung bedeuten.
Mit diesem Ausdruck bezeichnen wir diesen Mechanismus zur Verfügung zu stellen unseren Kursen / scripts gefiltert gemeinsame Eigenschaften, aber in Bezug auf die Umwelt in der wir arbeiten (lokal, Test, Produktion).
Es ist ein gemeinsamer Mechanismus in Java, aber nicht in PHP aus dem einfachen Grund, dass das Konzept des Einsatzes, wie sie gewöhnlich verstanden, nicht mit unserer geliebten Sprache verknüpft ist. Und "in der Tat recht häufig Testskripte lokal und kopieren Sie die Dateien per FTP auf unseren Test, oder (schlimmer noch) direkt auf die Produktion.
Am Arbeitsplatz ist aber sehr praktisch, herausgefiltert wurden automatisch auf die jeweiligen Eigenschaften, die unsere Anwendung in localhost oder auf einem anderen Rechner ausgeführt werden müssen (z. B. Frontend, ausgesetzt nach außen), so in diesem Artikel werden wir einen einheitlichen Rahmen für die Umsetzung Diese Art von Logik in einem PHP-Projekt unserer hypothetisch.
Dazu werden wir keine externen Pakete oder spezielle Abstraktionen wir brauchen, ist ein XML, eine PHP-Klasse und Textdateien.
Die Idee ist, in der XML-Datei, um unsere gemeinsame Eigenschaften zu definieren, erstellen Sie eine Datei für jede Umgebung, um sie zu verbessern und Code schreiben, dass sie alle zusammenfügt. Die Struktur unserer Testanwendung werden:
Hier ist die grundlegende Struktur:

Mal sehen, wie der Datei vorgenommen wird:
<? 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>
Neben den üblichen XML-Tags definieren das Dokument, das einen Tag <properties> Behälter, in dem wir legen eine Reihe von Tags <Eigenschaft> beginnt, die ersten drei diejenigen, die in dem Beispiel dienen soll, sind die letzten drei verschiedene Host verbunden und dienen PHP zu verstehen, was Umgebung sind wir dynamisch arbeitende.
Hier haben wir deine lokalen Umgebungen, Test und Produktion, aber nichts hindert Sie definieren andere, wie dev.
Für jedes der Zimmer ist eine Basis-URL, die nach unseren Anforderungen Wert, Anwendung für Anwendung gezeigt.
In unserem Szenario haben wir einen Test-Maschine zu erreichen "test.qualchedominio.it URL und einer Produktion sowie natürlich prod.qualchedominio.it auf localhost erreicht.
Der nächste Schritt ist, um sicherzustellen, dass die Eigenschaften in XML definiert unterschiedlich in Abhängigkeit von der "Umwelt, wo wir sind geschätzt. Wir verwenden für diesen Zweck von Textdateien in den Ordner-Filter, lasst uns den Inhalt eines nach dem anderen zu sehen:
; [LOCAL] Filter-Eigenschaften messaggio_variabile = "Wir LOCAL" url_servizio_esterno = http://dev-servizio.esterno.it
; [TEST] Filter-Eigenschaften messaggio_variabile = "Wir TEST" url_servizio_esterno = http://test-servizio.esterno.it
; [PRO] Filter-Eigenschaften messaggio_variabile = "wir mit der Produktion" url_servizio_esterno = http://prod-servizio.esterno.itit
Beachten Sie, dass die Eigenschaft "__app_version", in XML definiert, es ist nicht neu definiert werden in verschiedenen Dateien, wird es für alle Zwecke als gemeinsames Eigentum zwischen den verschiedenen Umgebungen und unveränderlich behandelt werden, so wird nicht gefiltert.
| |
Linux (Kurs)
Ein vollständiger Reiseführer von Open-Source-System. Von 49 €. |
| |
MySQL (Kurs)
Management von Open-Source-Datenbank. Von 39 €. |
| |
PHP (Kurs)
Vollständige natürlich für die Erstellung dynamischer Websites. Von 49 €. |