Propel
Propel | |
---|---|
Basic data
|
|
Current version | 1.7.1 (February 25, 2014) |
Current preliminary version | 2.0.0-alpha5 (June 27, 2015) |
programming language | PHP |
category | Framework |
License | WITH |
www.propelorm.org |
Propel is a tool for object relational mapping (ORM) to be able to store PHP objects in a relational database . Propel was developed for PHP 5 and is based on the Apache Torque project.
introduction
Propel allows the developer to use objects instead of SQL to read or write data from the tables of a database. Propel consists of two tools:
- the generator , which creates SQL definition files and PHP classes from the data model
- the runtime engine , with which objects can be stored in the database and read from the database
Propel offers simple possibilities to adapt the generated classes to your own needs. By using XML to define the data model, Propel can be easily integrated into existing frameworks . The generated classes can also be referred to as data objects (DAO).
generator
Based on a simple XML schema that describes the database and tables, the generator creates the PHP classes that can interact with the data model and SQL definition files to create the tables, keys, etc. in the relational database system .
Runtime engine
The runtime engine offers the option of using the generated classes in your own PHP scripts in order to keep reading and writing of the database transparent. In contrast to the generator, it is also available in a version for PHP 4. However, this version will no longer be maintained in the future.
requirements
The following requirements must be met in order to be able to use Propel:
- PHP 5 must be installed on the server
- Propel uses PHP Data Objects as a database abstraction layer
- The PEAR package PEAR :: Log is required for logging
- Phing is required to create the classes and the SQL definition file from the data model of the XML schema
Supported databases
Propel currently supports the following databases:
Web links
- Propel project page (English)
- Propel User Guide (English)
- API documentation for version 1.7.1 (English)
Individual evidence
- ↑ GitHub: Propel / CHANGELOG
- ^ Propel: The Blog
- ^ Stephan Schmidt: PHP Design Patterns , 2nd edition. O'Reilly Germany, Cologne 2009, ISBN 9783897218642 , pp. 351-408. (Chapter 7, "Enterprise Patterns: Data Layer and Business Logic")