Propel

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Propel
Basisdaten

Aktuelle Version 1.7.1
(25. Februar 2014[1])
Aktuelle Vorabversion 2.0.0-alpha5
(27. Juni 2015[2])
Programmiersprache PHP
Kategorie Framework
Lizenz MIT
www.propelorm.org

Propel ist ein Werkzeug für die objektrelationale Abbildung (ORM), um PHP-Objekte in einer relationalen Datenbank speichern zu können. Propel wurde für PHP 5 entwickelt und basiert auf dem Apache-Torque-Projekt.[3]

Einführung[Bearbeiten | Quelltext bearbeiten]

Propel erlaubt dem Entwickler, Objekte statt SQL zu verwenden, um Daten aus den Tabellen einer Datenbank zu lesen oder zu schreiben. Propel besteht aus zwei Werkzeugen:

  • dem Generator, welcher SQL-Definitionsdateien und PHP-Klassen aus dem Datenmodell erstellt
  • der Runtime-Engine, mit der Objekte in der Datenbank gespeichert und aus der Datenbank gelesen werden können

Propel bietet einfache Möglichkeiten, um die generierten Klassen an die eigenen Bedürfnisse anzupassen. Durch die Verwendung von XML für die Definition des Datenmodells lässt sich Propel leicht in existierende Frameworks integrieren. Die generierten Klassen können auch als Datenobjekte (DAO) bezeichnet werden.

Generator[Bearbeiten | Quelltext bearbeiten]

Auf Basis eines einfachen XML-Schemas, mit dem die Datenbank und die Tabellen beschrieben werden, erstellt der Generator die PHP-Klassen, die mit dem Datenmodell interagieren können, und SQL-Definitionsdateien, um die Tabellen, Schlüssel usw. im relationalen Datenbanksystem zu erstellen.

Runtime-Engine[Bearbeiten | Quelltext bearbeiten]

Die Runtime-Engine bietet die Möglichkeit, die generierten Klassen in den eigenen PHP-Skripten zu verwenden, um das Lesen und Schreiben der Datenbank transparent zu halten. Im Gegensatz zum Generator steht sie auch in einer Version für PHP 4 zur Verfügung. Diese Version wird in Zukunft jedoch nicht mehr weiter gepflegt werden.

Voraussetzungen[Bearbeiten | Quelltext bearbeiten]

Folgende Voraussetzungen müssen erfüllt sein, um Propel nutzen zu können:

Unterstützte Datenbanken[Bearbeiten | Quelltext bearbeiten]

Propel unterstützt derzeit folgende Datenbanken:

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. GitHub: Propel/CHANGELOG
  2. Propel: The Blog
  3. Stephan Schmidt: PHP Design Patterns, 2. Auflage. O’Reilly Germany, Köln 2009, ISBN 978-3-89721-864-2, S. 351–408. (Kapitel 7, „Enterprise Patterns: Datenschicht und Business-Logik“)