CakePHP ist eines der ältesten PHP-Frameworks, erschienen 2005. Es folgt dem Vorbild von Ruby on Rails und überträgt dessen Grundsatz Konvention vor Konfiguration auf PHP.
- CakePHP
Ein PHP-Framework nach dem Muster MVC, das über Namenskonventionen viel Konfiguration erspart.
Beispiel: „Die Mitgliederverwaltung des Verbands läuft seit Jahren auf CakePHP und wird nur noch gepflegt.“Verwandt: Ruby on Rails, das Vorbild für CakePHP.
Wie CakePHP arbeitet
Über Konventionen. Heißt eine Tabelle articles, findet CakePHP das passende Modell, den Controller und die Vorlagen von selbst, solange sie nach den Regeln benannt sind. Ein Grundgerüst für eine neue Tabelle erzeugt das Kommandozeilenwerkzeug Bake per Scaffolding.
Der Datenbankzugriff läuft über ein eigenes ORM, das Abfragen in PHP formuliert und vor SQL-Injection schützt.
Wo CakePHP heute steht
CakePHP wird weiter entwickelt, mit regelmäßigen Versionen für aktuelle PHP-Fassungen. Neben Laravel und Symfony ist es aber deutlich kleiner geworden, und neue Projekte entstehen selten darauf.
In vielen Unternehmen laufen jedoch Anwendungen aus den 2000er- und 2010er-Jahren, die auf CakePHP gebaut sind. Wer eine solche Anwendung übernimmt, profitiert davon, dass die Konventionen kaum Rätsel lassen.
CakePHP im Bestand pflegen
Der wichtigste Punkt ist die PHP-Version. Ältere Hauptversionen von CakePHP laufen nicht auf aktuellen PHP-Versionen, und ein Hoster, der alte PHP-Fassungen abschaltet, zwingt dann zum Update.
Ein Sprung über mehrere Hauptversionen ist eine größere Umstellung. Es lohnt sich, ihn zu planen, bevor der Hoster den Termin setzt.
Hilfe bietet das Werkzeug Rector, für das es fertige Regeln für CakePHP gibt und das einen Teil der Umstellungen am Code automatisch vornimmt. Den Rest sichern Tests ab, die vor dem Sprung zeigen, ob die Anwendung danach noch tut, was sie soll.