Class::DBI-ähnliche Bibliothek für PHP?
Frage
Ich habe eine alte Kruste geerbt PHP application
, und ich würde es gerne in etwas umgestalten, das etwas angenehmer zu handhaben ist, aber schrittweise.Im CPAN von Perl gibt es rund um Class::DBI eine Reihe von Klassen, die es Ihnen ermöglichen, Datenbankzeilen als Grundlage für Objekte in Ihrem Code zu verwenden, die von der Bibliothek generiert werden accessor methods
usw., aber Sie können auch zusätzliche Methoden hinzufügen.
Kennt jemand so etwas für PHP?Vor allem etwas, das keine umfassende Einführung eines „Frameworks“ erfordert ...Bonuspunkte, wenn es auch in PHP4 funktioniert, aber um ehrlich zu sein, hätte ich gerne einen weiteren Grund, darauf zu verzichten.:-)
Lösung
Andere Tipps
Class::DBI ist eine ORM (Object Relational Mapper) für Perl.Die Suche nach „PHP ORM“ bei Google liefert einige gute Ergebnisse, darunter Lehre, womit ich viel Glück hatte.Ich würde dort anfangen und mich nach oben arbeiten.
Das Richtige ist, über eine Abstraktionsschicht auf die Datenbank zuzugreifen. Wenn Sie also Ihr RDBMS oder die Art und Weise, wie Sie diesen Zugriff implementiert haben, ändern, müssen Sie nur diese Schicht ändern, während der Rest Ihrer Anwendung unberührt bleibt.
Damit Ihre Anwendung nicht mehr wissen muss, wie sie mit der Datenbank umgehen soll, muss Ihre Abstraktionsschicht für den DB-Zugriff durch ein Framework wie implementiert werden ADODB.
Alle Dateien, die sich auf diese Ebene beziehen, müssen sich in einem Unterverzeichnis befinden:
- /ado
In diesen Verzeichnissen legen Sie alle Ihre .php.inc-Dateien ab, die allgemeine Methoden für den Zugriff auf die Datenbank enthalten.
Wie wäre es mit MDB2 aus Birne?
Es bietet eine gemeinsame API für alle unterstützten RDBMs.Der Hauptunterschied zu den meisten anderen DB -Abstraktionspaketen besteht darin, dass MDB2 viel weiter führt, um die Portabilität zu gewährleisten.
Übrigens:@GaryF Was sind das für seltsame Titelattribute, die deine Links haben?Hast du sie hinzugefügt oder wurden sie von SO hinzugefügt?