HOME

TheInfoList



OR:

Propel is a free, open-source ( MIT)
object–relational mapping Object–relational mapping (ORM, O/RM, and O/R mapping tool) in computer science is a programming technique for converting data between type systems using object-oriented programming languages. This creates, in effect, a "virtual object datab ...
toolkit written in
PHP PHP is a General-purpose programming language, general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementati ...
. It is also an integral part of the PHP framework Symfony and was the default ORM up to, and including version 1.2.


History

The Propel project was started in August 2003, with the availability of beta versions PHP version 5. With version 5, PHP was finally able to provide a level of support for
object-oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
that both made projects like Propel possible and also created a demand for these hitherto-missing components of large-scale, object-oriented architectures. Propel was originally based on the Apache Torque project, which was a Java language ORM project.


Features

Propel's primary function is to provide a mapping between PHP classes and database tables. To accomplish this Propel includes a ''generator'' component which uses source code generation to build PHP classes based on a datamodel definition written in
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. ...
. Propel also includes a ''runtime'' component which manages connections, transactions, and any idiosyncratic rules that describe the workings of the
RDBMS A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
being used with Propel.


See also

{{Portal, Free and open-source software *
List of object–relational mapping software This is a list of well-known object–relational mapping software. It is not up-to-date or all-inclusive. Java *Apache Cayenne, open-source for Java *Apache OpenJPA, open-source for Java * DataNucleus, open-source JDO and JPA implementation (forme ...
* Doctrine (PHP) * Symfony, a web application framework * Skipper, a visualization tool for Propel


References


External links


Propel Home Page
Free software programmed in PHP PHP libraries Object-relational mapping