Flinkes, sparsames Rahmenwerk

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

class Post_Model extends ORM {
protected $has_one = array('user');
}
class Comment_Model extends ORM {
protected $belongs_to = array
('post');
}

Was ist mit den Properties der Klasse beziehungsweise der Datenbank-Tabelle? Diese müssen nicht explizit in der Klasse aufgenommen werden, sondern werden durch das Framework automatisch anhand der Datenbanktabelle in die Objekte der Klasse übernommen.

Zugriff auf Daten

Der Zugriff auf die Inhalte einer Datenbank ist dank der Datenbankzugriffsklassen sehr einfach. Diese stellen ein objektorientiertes Interface für den Zugriff auf die Datenbanktabellen zur Verfügung.

Zum Lesen eines einzelnen Datensatzes einer Klasse anhand einer ID genügt eine einzige Zeile, wie im folgenden Listing zu sehen ist.

$user = new User_Model( $id );
echo $user->firstname." ".$user->
lastname;

Da Elemente einer Datenbank nur zum Teil anhand einer eindeutigen ID gelesen werden, besitzt das Framework noch weitere Funktionen, die die gleiche Funktion erfüllen, wie die SELECT-Queries von SQL. Kohana nennt diese Funktionen Finder. Das folgende Listing zeigt zwei von ihnen.

$result = ORM::factory('article')->
where('title', $title)->find();
$result = ORM::factory('article')->
find_all($limit,$offset);

Auch zum Speichern und Löschen von Datenbankwerten beziehungsweise Objekten existieren entsprechende objektorientierte Methoden. Auch deutlich komplexere Abfragen, die über mehrere Tabellen ausgeführt werden, können mit Kohana problemlos implementiert werden.

Die Funktionalität der ORM-Schicht von Kohana reicht nicht an Schwergewichte wie beispielsweise Doctrine () heran. Für die alltäglichen Aufgaben ist sie aber meist absolut ausreichend. Im Gegenzug bekommt man eine schlanke und schnelle Datenbank-Zugriffsschicht, die sehr ressourcenschonend arbeitet. Wer speziellere Anforderungen hat, der kann zudem zu jeder Zeit auf natives SQL zur Kommunikation zurückgreifen.

PHP-Frameworks Teil IV - Kohana

© Archiv

Zahlreiche, detaillierte Tutorials helfen beim Einstieg in Kohana.

In der aktuellen Version unterstützt Kohana lediglich MySQL und Postgre SQL als Datenbank-Server. Andere Datenbanktreiber sind geplant, aber noch nicht in einer stabilen Version im Framework enthalten. Die kommende Version 2.4 soll eine Menge zusätzlicher Treiber für Datenbanken wie Oracle, Firebird und Sybase enthalten. SQLite-Support ist in der aktuellen Entwicklungsversion, die via Subversion bezogen werden kann, bereits enthalten.

Fazit

Kohana ist ein Framework, das sich durchaus als Alternative zu anderen PHP-Frameworks platzieren kann. Schwergewichte wie Symfony, Zend Framework oder Cake PHP verbrauchen meist ein vielfaches an Ressourcen und benötigen dadurch auch zwangsläufig mehr Zeit für die Abarbeitung einer Benutzeranfrage. Hier spielt Kohana seine ganze Stärke aus. Trotz vieler Funktionen ist es dennoch kompakt und dadurch sehr schnell.

Natürlich hat Kohana auch einige Nachteile. Verglichen mit anderen Frameworks besitzt das Framework eine deutlich kleinere Benutzer- und auch Entwicklerbasis. Für Einzelentwickler mag dies kein Problem darstellen.

Für ein Unternehmen kann dies eventuell aber ein Kriterium sein, das gegen den Einsatz des Frameworks spricht, da kaum Entwickler mit Kohana-Know-how vorhanden sind. Auch kann Kohana funktional nicht immer ganz mit anderen Lösungen mithalten, auch der Toolsupport kann durchaus noch verbessert werden.

Je nach den Rahmenbedingungen sind die Vor- und Nachteile durchaus anders zu bewerten. Funktional betrachtet hat die aktuelle Version des Frameworks kaum Schwächen und kann auch für größere Anwendungen bedenkenlos als Basis gewählt werden.

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​".