In diesem Tutorial wird Schritt für Schritt erklärt, wie Sie das Adventure PHP Framework (kurz APF) einrichten.
Bevor Sie beginnen, stellen Sie bitte zunächst sicher, dass Sie einen PHP-fähigen Webserver installiert haben. Für einen lokalen Testserver unter Windows eignet sich XAMPP sehr gut. Er beinhaltet eine Installation aller wichtigen Serverkomponenten, wie Apache, PHP, MySQL, etc. Je nach Aufbau des Enwicklungssystems, müssen im Folgenden gegebenenfalls Pfade angepasst werden. Unter LINUX/UNIX können die notwendigen Webserver- und PHP-Bibliotheken mit dem Paket-Manager Ihrer Wahl sehr einfach direkt installiert werden.
Weitere Hinweise finden Sie in den Grundlagen.
Unter Downloads finden Sie die aktuellste Version des APF. Zum Zeitpunkt der Erstellung des Tutorials ist dies die Version 3.0.
Bei den Release-Dateien wird zwischen folgenden Paket-Typen unterschieden:
Für dieses Tutorial wird das Framework-Code-Release verwendet, welches Sie nun bitte herunterladen.
Zunächst ist es wichtig die Ordnerstruktur zu verstehen. Im Tutorial wird davon ausgegangen, dass der Document-Root (der Ordner der von Ihrem Webserver genutzt wird wenn Sie http://localhost/ im Browser aufrufen) unter /xampp/htdocs liegt.
Das APF ist so aufgebaut, dass nur eine einzige Datei (Bootstrap-Datei) aufgerufen wird. Der Rest wird über URL-Parameter gesteuert. Die Bootstrap-Datei (z.B. index.php) legen wir im Ordner /xampp/htdocs ab. Hier werden außerdem öffentlich zugängliche Dateien platziert (z.B. CSS, JS, Bilder).
Aus Sicherheitsgründen sollten die Dateien des APF nicht öffentlich zugänglich sein da sonst Konfigurationsdateien einfach von außen ausgelesen werden könnten. Die sicherste Variante ist die Dateien des APF oberhalb des Wurzelverzeichnisses abzulegen. Sollte dies aus irgendeinem Grund (wie z.B. einem Webspace, bei dem nur Zugriff auf das Wurzelverzeichnis besteht) nicht möglich sein, fahren Sie mit Kapitel 4.2 fort. Dort wird eine zusätzliche Sicherung erstellt um den Zugriff von außen zu unterbinden. Sofern Sie in der Konfiguration Ihres Web-Accounts frei sind, folgen Sie den Anweisungen in Kapitel 4.1.
Um die Dateien unserer Webseite bzw. Applikation zu schützen, legen wir nun das Verzeichnis /xampp/APF parallel zum Root-Verzeichnis /xampp/htdocs an. Öffnen Sie nun das zuvor heruntergeladene Paket und entpacken es in das soeben erstellte Verzeichnis.
Sie finden nun folgende Ordnerstruktur vor:
/xampp/APF/
core/
modules/
tools/
...
htdocs/
Sie können nun direkt mit Kapitel Kapitel 5 fortfahren.
Installieren Sie das APF innerhalb des von aussen zugänglichen Bereichs Ihres Webservers muss darauf geachtet werden, dass der Ordner in dem sich die APF Dateien befinden vor dem Zugriff geschützt ist.
Legen Sie nun das Verzeichnis /xampp/htdocs/APF/ an und entpacken die zuvor heruntergeladene Datei.
Sie finden nun folgende Ordnerstruktur vor:
/xampp/htdocs/APF/
core/
modules/
tools/
...
Um das Verzeichnis /xampp/htdocs/APF vor dem Zugriff von außen zu schützen, legen Sie bitte die Datei .htaccess mit folgendem Inhalt an:
# Apache <=2.2
Order allow,deny
deny from all
# Apache >=2.4
Require all denied
Zuerst eine kurze Erklärung der einzelnen Ordner:
Legen Sie nun die Datei /xampp/htdocs/index.php an. Wir werden nun eine einfache "Hallo Welt"-Applikation schreiben, um die Funktionalität des APF zu erklären.
Zur Generierung der Anzeige legen wir nun ein Template mit dem Namen helloworld.html im Ordner /APF/helloworld an und füllen dieses mit dem Inhalt:
Hallo Welt!
Zur Generierung der Ausgabe erweitern Sie bitte die zuvor angelegte index.php mit folgenden Inhalt (Erklärung folgt darunter):
// Bootstrap-Datei für den unter 4.1 konfigurierten Ordner einbinden
include('../APF/core/bootstrap.php');
// Bootstrap-Datei für den unter 4.2 konfigurierten Ordner einbinden
include('./APF/core/bootstrap.php');
use APF\core\singleton\Singleton;
use APF\core\frontcontroller\FrontController;
// Front-Controller erzeugen und konfigurieren
$fC = Singleton::getInstance(FrontController::class);
// Request-Abarbeitung starten und Ergebnis zum Client senden
echo $fC->start('APF\helloworld', 'helloworld');
Zuerst wird die Datei bootstrap.php eingebunden, die die Basis-Konfiguration des Frameworks vornimmt. Anschließend wird der Front-Controller erzeugt und mit dem initialen Template gestartet. Der erste Parameter der start()-Methode ist dabei der Namespace (=der Pfad zum Template) und der zweite Parameter benennt die Templatedatei. Template-Namen werden im APF immer ohne die Dateiendung angegeben, da die Endung *.html per Konvention amgehangen wird. Zuletzt wird noch per echo die erzeugte Seite ausgegeben.
Die genaue Funktionsweise des Front-Controller kann unter Front-Controller nachgelesen werden.
Um das Ergebnis zu betrachten rufen wir die URL
http://localhost/index.php
auf. Dort sollte nun Hallo Welt! erscheinen.
Jetzt sollte die grundlegende Funktionalität des APF bekannt sein. Um die vielen anderen Funktionen kennenzulernen, empfiehlt es sich noch ein paar weitere Tutorials zu lesen. Als nächstes Tutorial schlagen wir Erstellen einer Webseite vor.
Dieser Artikel wurde exklusiv für adventure-php-framework.org geschrieben.
Ralf Schubert ist begeisterter APF-Entwickler. Für ihn bietet es viele Vorteile gegenüber anderen Frameworks. Besonders gerne nutzt er die einfach Möglichkeit, wiederverwendbare Elemente zu erstellen.
Um Neueinsteiger bei der Verwendung des APF zu unterstützen hat er ein Tutorial verfasst. Darin werden die ersten Schritte mit dem Framework erklärt.
Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen finden Sie in den Datenschutzrichtlinien.