Flinkes, sparsames Rahmenwerk

Teil 2: Serie: PHP-Frameworks Teil 4 - Kohana

Ein Kohana-Controller ist einfach zu implementieren. Das folgende Listing zeigt ein Beispiel für eine solche Controller-Klasse.

class Test_Controller extends
Controller {
public function index() {
echo 'Hallo Welt!';
}
}

Auch auf den zweiten Blick eine unscheinbare Implementierung, die als einzige Abhängigkeit die Klasse Controller des Frameworks besitzt. Wichtig ist zudem die Einhaltung einer Namenskonvention: So muss der Name der Klasse mit _Controller enden. Die Funktionen dieser Klasse können dadurch direkt per URL aufgerufen werden und werden Actions genannt.Eine Kohana-basierte Anwendung besteht nicht nur aus einem Controller, sondern aus vielen verschiedenen. Welcher Controller aufgerufen wird, entscheidet sich anhand der aufgerufenen URL. Der Kohana-Router ruft den entsprechenden Controller anhand frei definierbarer Regeln auf. Die Standardregeln sind dabei eher einfach gehalten. Auch hier kommen eine Reihe von Konventionen zum Einsatz, welche die Entwicklung deutlich vereinfachen.

PHP-Frameworks Teil IV - Kohana

© Archiv

Kohana ist ein besonders schlankes, schnelles, sicheres und ressourcensparendes PHP-Framework.

Wie das folgende Beispiel zeigt, haben bestimmte Teile in einer URL eine bestimmte Bedeutung. Der erste Teil ist der Name des aufzurufenden Controllers.

Der zweite die Action, also die Funktion innerhalb der Klasse, die genutzt werden soll. Anschließend können beliebig viele Parameterwerte folgen. Hier einige Beispiel für eine URL in der Standard-Routing- Schreibweise.

• http://www.domain.de/controller/action/key/value • http://www.domain.de/user/edit/id/1 • http://www.domain.de/blog/delete/id/23

An diesen Beispielen ist zu sehen, dass das Framework auf die normale Schreibweise von Parametern in einer URL verzichtet und alle Elemente durch einen Schrägstrich trennt. Durch die Default-Routing-Regeln von Kohana ergeben sich schon von ganz allein sprechende URLs. Selbstverständlich können diese Verteilungsregeln aber auch an eigene Bedürfnisse angepasst werden.

Das Framework instanziert beim Aufruf einer URL die richtige Controller-Klasse anhand des Namens und nutzt die zugehörige Action-Funktion. Dadurch kann eine Kohana-Anwendung komplett objektorientiert entwickelt werden.

Die aufgerufene Action-Funktion des Controllers kümmert sich anschließend um die weitere Verarbeitung. Sie nutzt dazu in der Regel weitere Klassen der entsprechenden Schichten der Applikation. Meist werden Daten über die Model-Klassen gelesen oder geschrieben und eine Webseite über den View erzeugt.

View

Die View-Teile einer Applikation sind für die visuelle Darstellung der Anwendung und ihrer Daten verantwortlich. Bei Webanwendungen ist das Ergebnis in der Regel eine Seite mit HTML oder Javascript. Die View-Verarbeitung mit Kohana ist recht simpel.

Das Framework verzichtet auf die Verwendung einer hochgezüchteten Template-Engine im Stile von Smarty. Stattdessen wird die View-Datei wie eine normale PHP-Datei verwendet. Die Daten, die innerhalb eines Views ausgegeben werden sollen, werden meist vom Controller zur Verfügung gestellt. Das folgende Beispiel zeigt einen View, der Daten ausgibt, die vom Controller übergeben werden.

<html><head><title><?php echo $titel;?></title></head><body><h1><?php echo $ueberschrift;?></h1><?php echo $text;?></body></html>

Mehr zum Thema

Youtube Sperre umgehen GEMA
Videos freischalten

So umgehen Sie die GEMA-Sperre bei Youtube. Was Sie dazu brauchen, und wie es am einfachsten geht.
Neue Fritzboxen unterstützen den AC-Standard.
WLAN-Geschwindigkeit verdoppeln

Mehr WLAN-Geschwindigkeit: Mit dem WLAN-Standard 802.11ac und den richtigen Geräten und Einstellungen verdoppeln Sie den Datendurchsatz.
Netflix auf dem TV
Programm in der Übersicht

Welche Filme und Serien gibt es bei Netflix eigentlich zu sehen? Was ist neu im Streaming-Angebot? Diese Antworten helfen weiter.
Netflix
Streaming

Preise, kompatible Geräte, Datenrate, Serien- und Filmangebot von Netflix: Wir beantworten die wichtigsten Fragen rund um den Streaming-Dienst.
E.T. – Der Außerirdische
Vorschau auf Film- und Serien-Highlights

Amazon Prime Instant Video lockt im Dezember 2016 mit Film-Highlights wie "E.T.", "Fast & Furious 7" und der Serie "Ku’damm 56​".