Menü

PHP Mini-Workshop: Framework FuelPHP

Bei FuelPHP stehen hochmoderne Architektur und komfortable Funktionen im Vordergrund. In diesem Artikel erhalten Sie einen kompakten Einstieg.
Mini-Workshop: Framework FuelPHP © Internet Magazin
Mini-Workshop: Framework FuelPHP

Entwickelt wurde FuelPHP vor allem von Dan Horrigan, der vorher unter anderem schon zum PHP-Framework Code Igniter beigetragen hat. In nur sechs Monaten Entwicklungszeit entstand eine erste Version, die Ende Juli veröffentlicht wurde. Aktuell ist Version 1.1. Sie befindet sich im Stadium Release Candidate 1, also mitten in der Bug-Prüfung.

Allerdings lohnt es bei einem so jungen Projekt immer, auf die aktuellste Version zurückzugreifen, auch wenn sie noch nicht als produktionsreif gekennzeichnet ist. Generell hat auch die Version 1.0 noch kein Siegel "stable release" erhalten, sondern endete mit dem Release Candidate 3.

In Sachen Lizenz kann man FuelPHP eigentlich als MIT-basiertes Framework bezeichnen. An sich schon eine gute Sache, denn MIT gehört zu den großzügigen Open-Source-Lizenzen. Daneben haben die Entwickler aber unter anderem via Twitter kommuniziert, dass die Quelltexte an sich eigentlich Public Domain sind und nur die Konfigurationsdateien unter der MIT stehen. Eine sehr großzügige Geste, in der Praxis für die meisten Projekte aber wohl nicht von Belang.

Schritt 1: Die Installation

Die Website des Fuel-Projekts enthält Downloads und Dokumentation. © Internet Magazin
Die Website des Fuel-Projekts enthält Downloads und Dokumentation.

Für das Installationspaket von FuelPHP müssen Sie nur direkt auf der Website auf Download klicken. Dann öffnet sich ein ZIP-Archiv mit allen relevanten Dateien. Sollten Sie den aktuellen Entwicklungsstand nutzen wollen, finden Sie ein Repository auf Github. Git ist ein noch recht neues Versionskontrollsystem für die gemeinsame Entwicklung größerer Entwicklergruppen an einer Software.

Die Schnellinstallation läuft direkt über die Kommandozeile, allerdings aktuell nur unter Linux und OS X, nicht unter Windows. Mit dem ZIP-Paket können Sie FuelPHP allerdings auch manuell installieren. Dazu kopieren Sie den Inhalt des Archivs in ein Verzeichnis in Ihrem Webroot (wie lokal mit Xampp in htdocs/fuel/). Nun lohnt ein Blick auf die Ordnerstruktur:

fuel/

 app/

 core/

 packages/

public/

 .htaccess

 assets/

 index.php

oil

Das Verzeichnis fuel ist das Kernverzeichnis für die Applikation und für die Core-Dateien des Frameworks. Sie können es auch außerhalb des Webroots legen.

Dies ist aus Sicherheitsgründen durchaus empfehlenswert. Eine .htaccess-Datei, die den Zugriff von außen verhindert, ist allerdings auch integriert. Das zweite wichtige Verzeichnis ist public. Es stellt quasi das Eingangstor in die Fuel-Anwendung dar.

Die Inhalte dieses Verzeichnisses sollten Sie in das Verzeichnis legen, in dem die Anwendung später verfügbar sein soll. Für eine lokale Installation verschieben Sie die Inhalte also direkt unter htdocs/fuel. Dann sieht die Struktur so aus:

assets/

fuel/

 app/

 core/

 packages/

.htaccess

index.php

 oil

Schritt 2: Passen Sie die Pfade an

Nun müssen Sie in der index.php die Pfade anpassen. Konkret sind das drei Stellen: Der Pfad für die eigentliche Applikation. Hier werden Sie Ihre MVC-Dateien einfügen, sprich Controller, Models usw. Außerdem das Paketverzeichnis für Erweiterungen und den Framework Core. In unserer Konstellation müssen wir einfach nur einmal "../" entfernen, da durch die Verschiebung der Inhalte des public-Verzeichnisses sonst die Beziehung nicht mehr stimmt:

/** * Path to the application directory. */ define('APPPATH', realpath(__DIR__.'/ fuel/app/').DIRECTORY_SEPARATOR); /** * Path to the default packages directory. */ define('PKGPATH', realpath(__DIR__.'/ fuel/packages/').DIRECTORY_ SEPARATOR); /** * The path to the framework core. */ define('COREPATH', realpath(__DIR__.' /fuel/core/').DIRECTORY_SEPARATOR);

Nun landen Sie automatisch im ersten Controller der Anwendung. Sie finden ihn unter htdocs/fuel (bzw. in Ihrem Anwendungsverzeichnis) und dort unter fuel/app/classes/controller/welcome.php. Der Controller ist einfach aufgebaut, er besitzt eine Action für index, das ist die Willkommensnachricht, die Sie gerade im Browser sehen. Sie greift auf die View im Verzeichnis fuel/app/views/welcome/index.php zurück.

Schritt 3: Die Konfiguration

In Sachen Konfiguration befindet sich FuelPHP standardmäßig im Development-Modus. In der index.php, die nun im Hauptverzeichnis des Fuel-Pakets liegt, ist zum Beispiel die Option display_ errors noch aktiviert. Diese Anzeige können Sie dort natürlich generieren. Außerdem haben Sie die Möglichkeit, über eine .htaccess-Datei den Modus von development auf production zu ändern:

SetEnv FUEL_ENV production

Alle weiteren Konfigurationen finden dann in der Konfiguration statt. Sie finden sie unter fuel/app/config. Die Standardkonfiguration findet in config.php statt, db.php enthält die Datenbankverbindung und routes.php Einstellungen zum Routing. In den zwei Unterverzeichnissen development und production finden sich verschiedene Datenbankeinstellungen für Entwicklungs- und Produktivumgebung.

Schritt 4: Verwenden Sie das Tool OIL

Ab hier gibt es zwei Ansätze: Sie können nun per Hand den Welcome Controller ändern und damit weiterarbeiten, oder - der elegantere Weg - Sie erstellen eigene MVC-Komponenten mit dem Kommandozeilentool OIL. Es liegt im Hauptverzeichnis des kompletten Fuel-Pakets und lässt sich über PHP in der Kommandozeilenversion ansprechen. Ein einfaches Kommando sieht beispielsweise so aus:

php oil -v

Es verrät zuerst einmal, ob OIL funktioniert und liefert die Version. Damit das bei verschiedenen Installationen läuft, müssen Sie mehrere Dinge sicherstellen: Der Aufruf der Kommandozeilenversion von PHP muss funktionieren.

Per Scaffolding erstellen Sie einen ganzen Controller. © Internet Magazin
Per Scaffolding erstellen Sie einen ganzen Controller.

Wenn er beispielsweise in Windows nicht global hinterlegt ist, benötigen Sie die php.exe. Ein Beispiel: Bei einer Xampp-Installation verwenden Sie c:\xampp\php\php.exe. Außerdem müssen Sie im Verzeichnis von OIL sein, also c:\xampp\htdocs\fuel\.

OIL hat verschiedene Zwecke: Neben dem Erstellen neuer Dateien und ganzer Projekte (dem so genannten Scaffolding) können Sie auch Tasks starten, die Applikation testen, Pakete installieren und eine Konsole zum Testen verwenden. Fürs erste reicht uns die Scaffolding-Funktion, um einen neuen Controller für die Anzeige einer Artikelliste zu erzeugen.

Schritt 5: Erstellen Sie eine Applikation

Wenn OIL erst einmal läuft, kann die Zauberei beginnen: Um eine Applikation für die Anzeige von Artikeln zu erzeugen, können Sie folgenden Befehl verwenden:

php oil g scaffold article name: Artikelliste:text

php ersetzen Sie dabei nötigenfalls durch den Pfad zur php.exe. g steht für generate. scaffolding weist an, dass alle Bestandteile inklusive Beispielcode erstellt werden. Danach folgt der Name des anzuzeigenden Datenbestands im Singular. Als Konvention ist hier die englische Sprache zu empfehlen, da von OIL einfach ein s an den Singular angehängt wird.

Ist der Befehl aufgerufen, arbeitet OIL erst einmal und erstellt alle Dateien. Den Controller können Sie dann direkt aufrufen. Dazu tippen Sie einfach den Namen des Controllers hinter die Basisadresse ein. Bei der hier vorliegenden Installation ist das:

http://localhost/fuel/articles

Die Liste, die daraufhin erscheint, ist natürlich noch leer. Zusätzlich wurde ein Formular zum Editieren erzeugt. Letzteres funktioniert auch noch nicht, weil noch keine Datenbank eingerichtet ist. Aber dazu gleich mehr.

weiterlesen auf Seite 2
 
Whitepaper Lexware-Logo
Content-Revolution Wie Sie professionelles Content-Marketing betreiben.
Haptik-Effekt Im Einsatz im multisensorischen Marketing.
x