Donnerstag, 20. November 2008

PHP

PHP ORM - Object Relational Mapper in PHP

Mit Object Relational Mapper kann Objekte in einer relationen Datenbank abbilden. In PHP gibt es folgende ORM:

Doctrine

Für Doctrine gibt es zwischenzeitlich in der Version 1.0.3. Doctrine hat folgende Features:

  • Behaviors
  • Caching
  • Class Templates
  • Command Line Interface
  • DQL (Doctrine Query Language)
  • Data Fixtures
  • Hierarchical Data
  • Migrations
  • Native SQL
  • Sandbox
  • Schema Files
  • Search Indexing
  • Transactions
  • Validators

Propel

Propel ist auch ein ORM-Toolset welches auf Apache Torque basiert. Propel bestitzt folgende Eigenschaften:

  • Easily extensible.
    Use of XML schemas makes it possible to easily integrate with other components driven by your data model (e.g. a form generation tool could also use the same XML schema) or to extend the schema definition to include attributes for other components (e.g. more validation informat for that form tool).
  • Easily customizable.
    The generated object model is built to be customized. All internal calls are made to empty stub classes which extend the classes with generated logic. You can override behavior in the stub classes or provide your own custom business logic without sacrificing the ability to rebuild your object model at a later time.
  • Plays nice.
    This is a way of saying that Propel doesn't force you to use only Propel tools. For example, while you can use the Criteria objects to construct queries without writing SQL, we recognize that Criteria doesn't do everything and so we've also made it easy to use custom SQL to populate generated objects.
  • Truly independent.
    The use of a build process to create customized SQL and PHP classes means that your database interactions with Propel are truly database-independent -- taking advantage of the strengths of your RDBMS and providing emulation for things your RDBMS doesn't support (e.g. fkey cascading deletes in MySQL). Tools are also provided to easily move data from one RDBMS to another.
  • Intuitive, Predictable.
    Propel's data model definition is follows very closely the structure of the underlying database. This provides the advantage of making Propel easy to understand and also of behaving predictably with very complex data models.
  • Advanced.
    Propel makes the difficult relational problems easy and efficient. For example, Propel provides the ability to populate related (foreign key) objects from a single query. Propel also supports basic (table per class tree) inheritance and other advanced OO features.

Ich habe direkt mit beiden noch nicht gearbeitet. Indirekt über Symfony mit Propel - deshalb kann ich keine persönliche Beurteilung geben, welche der ORMs besser ist. Viele Entwickler empfinden aber Doctrine als handlicher und schneller.

Bewertung: keine, 0 Stimme(n) 908 Klicks
PHP
Von Mr.Foo in PHP am 20.11.08@14:12 Uhr

Trackbacks
Trackback für spezifische URI dieses Eintrags

Keine Trackbacks

1 Kommentare
Ansicht der Kommentare: (Linear | Verschachtelt)

prodigy7 - #1 - 20.11.2008 17:53 - (Antwort)

http://www.ezpdo.net


Kommentar schreiben

Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Sie können [geshi lang=LANG][/lang] Tags verwenden um Quellcode abhängig von der gewählten Programmiersprache einzubinden
 
 

Mr. Foo

PHP ORM - Object Relational Mapper in PHP

  • Homepage

Suche

Kategorien

  • Android (2)
  • C-Sharp (4)
  • Datenbank (30)
  • Delphi (2)
  • Entwicklung (36)
  • Flash (5)
  • Games (10)
  • Gutscheine (4)
  • Hardware (14)
  • HTML CSS (16)
  • Internet (88)
  • Java (32)
  • Javascript (24)
  • Linkdump (9)
  • Linux (102)
  • Low-Level (10)
  • Lua (8)
  • Musik (9)
  • Netzwerk (25)
  • New World Order (109)
  • Perl (3)
  • PHP (130)
  • Magento (5)
  • Symfony (3)
  • Zend Framework (7)
  • Probleme und Lösungen (26)
  • Python (22)
  • Ressourcen (23)
  • Sicherheit (91)
  • Software (60)
  • Sonstiges (47)
  • Own Stuff (48)
  • Spass (46)
  • Technik / Wissenschaft (4)
  • Tips (15)
  • Weisheiten (17)
  • Windows (23)
  • Wort des Tages (15)


Alle Kategorien

Archive

  • Mai 2012
  • April 2012
  • März 2012
  • Das Neueste ...
  • Älteres ...

Abonnieren lohnt sich!

  • XML RSS 2.0 feed
  • ATOM/XML ATOM 1.0 feed
  • XML RSS 2.0 Kommentare

Tagcloud

Datenbank Entwicklung Internet Java Javascript Linux Lösung Netzwerk News New World Order PHP Problem Probleme und Lösungen Sicherheit Software Sonstiges Spass Tipp Update Windows

Beliebte Einträge

  • Magento ist scheisse (197)
  • Plugin-container.exe deaktivieren (107)
  • BWin Betrug und Abzocke bei Minigames? (65)
  • C compiler cannot create executables unter Debian (53)
  • Scheiss Linux - USB-Platte viel zu langsam (wenns mal funktioniert) (43)
  • Sicheres Kontaktformular mit PHP - Spam verhindern (37)
  • UML-Diagramme aus Java-Klassen generieren – Java2UML (28)
  • Es konnte keine TCP/IP-Verbindung mit dem Host hergestellt werden (28)
  • Option Bug im Internet Explorer bei Nutzung von innerHTML und Javascript (24)
  • Zend Studio - Javaw.exe lastet die CPU aus (24)

Kommentare

Hugo zu BWin Betrug und Abzocke bei Minigames?
So, 20.05.2012 12:25
ich habe mich gestern auf BWIN reg [...]
Ubuntu 12.04 zu The assembly mscorlib.dll was not found or could not be loaded.
Fr, 18.05.2012 17:11
Hat bei mir leider nicht geklappt. [...]
Oliver Riske zu Es konnte keine TCP/IP-Verbindung mit dem Host hergestellt werden
Di, 15.05.2012 20:38
Super Danke!
anon zu BWin Betrug und Abzocke bei Minigames?
Sa, 05.05.2012 18:43
ihr scheiss betrüger
Jürgen zu Unable to elevate error:1814 VLC Problem
Mi, 02.05.2012 16:54
So einfach ist es bei mir jedenfal [...]
 

Kontakt/Informationen