Model-View-Controller
CodeIgniter basiert auf dem Model-View-Controller Entwicklungsmuster. MVC ist ein Software-Ansatz, der die Anwendungslogik von der Präsentationsebene trennt. In der Praxis erlaubt dieser Ansatz dir Webseiten mit nur wenigen Codezeilen zu versehen, da der PHP-Code von den Templates getrennt ist.
- Das Model stellt die Datenebene dar. Typischerweise enthalten Model-Klassen Funktionen die dir dabei helfen Daten aus einer Datenbank zu lesen, sie dort reinzuschreiben oder sie zu verändern.
- Der View ist die Information, die einem Anwender präsentiert wird. Ein View ist in der Regel eine Website, aber in CodeIgniter kann ein View auch ein Teil einer Seite sein, wie etwa der Kopf oder der Fuss einer Seite. Es kann auch eine RSS-Seite, oder irgendein anderer Seitentyp sein.
- Der Controller fungiert als Schnittstelle zwischen Model und View, und jeder anderen Ressource, die zur Verarbeitung der HTTP-Anfrage und zur Erstellung der Webseite erforderlich ist.
CodeIgniter hat eine ziemlich lockere Einstellung gegenüber dem MVC-Ansatz, da Models nicht zwingend erforderlich sind. Falls du also die zusätzliche Aufteilung nicht benötigst, oder der Ansicht bist, dass die Pflege von Models deiner Anwendung unnötige Komplexität aufzwingt, kannst du sie ignorieren und deine Anwendung minimalisiert aus Controllern und Views zusammenstellen. CodeIgniter ermöglicht es dir eigene Kernbibliotheken zu entwickeln, sodass du so arbeiten kannst, wie es für dich am sinnvollsten erscheint.