ORM conserve automatiquement les objets d'un programme dans une base de données relationnelle en utilisant des métadonnées qui décrivent le mappage entre les objets et les bases de données. Essentiellement, convertir des données d'un formulaire à un autre.
ORM fournit la génération de toutes les instructions SQL, et les codeurs sont loin des concepts de bases de données. Le mappage d'une exigence conceptuelle (telle qu'un HQL) vers une instruction SQL ne coûte rien, pas même 1 % de perte de performances. Le véritable impact sur les performances se situe au cours du processus de mappage, et plus particulièrement lors de l’instanciation de l’objet. (Apprentissage recommandé : Tutoriel vidéo PHP)
Actuellement, les ORM open source PHP les plus connus sont les suivants :
Propel
Propel est un framework de mappage ORM (Object Relational Mapping) adapté à PHP5. Il fournit un support de couche de persistance d'objet basé sur Apache Torque. Il génère du SQL et des classes via des fichiers de définition de schéma au format XML et les fichiers de configuration correspondants. Il vous permet d'utiliser des objets au lieu de SQL pour lire et écrire des enregistrements dans les tables de base de données. Propel fournit un générateur pour créer des fichiers de définition SQL et des classes PHP pour votre modèle de données. Les développeurs peuvent également facilement personnaliser les classes générées. Nous pouvons également intégrer Propel dans les frameworks de développement d'applications existants via XML, les classes PHP et les outils de build Phing. Par exemple, les versions antérieures à 1.2 du framework PHP symfony sont utilisées par défaut. sert de framework ORM par défaut.
Doctrine
Doctrine est un framework PHP ORM Il doit fonctionner sur la version >=php5.2.3.
L'une de ses principales caractéristiques est qu'il utilise une approche orientée objet pour implémenter la fermeture des requêtes de base de données. Sa couche inférieure utilise une instruction de requête DQL similaire à Hibernate HQL pour effectuer des requêtes de base de données, ce qui rend le développement considérablement plus flexible. réduction du code en double. Par rapport à Propel, l'avantage de Doctrine est qu'il prend en charge la recherche en texte intégral. La documentation de Doctrine a toujours été plus complète et plus riche que celle de Propel, la communauté est plus active, plus naturelle, plus facile à lire et plus proche du SQL natif. . Les performances sont également légèrement meilleures que celles du Propel. De même, vous pouvez facilement intégrer Doctrine dans les frameworks d'applications existants. Par exemple, les versions 1.3 et ultérieures du framework PHP symfony utilisent Doctrine comme framework ORM par défaut, et vous pouvez également intégrer Doctrine avec Codeigniter.
EZPDO
EZPDO est un framework PHP ORM très léger. L'intention initiale de l'auteur d'EZPDO est de réduire la courbe d'apprentissage complexe de l'ORM et de trouver autant que possible un équilibre entre l'efficacité opérationnelle et la fonctionnalité de l'ORM. Il s'agit du framework ORM le plus simple que j'ai jamais utilisé jusqu'à présent, et je souhaite toujours l'intégrer. Venez à mon SDK CoolPHP, et l'efficacité de fonctionnement est assez bonne, et les fonctions peuvent essentiellement répondre aux besoins, mais la mise à jour d'ESPDO est relativement lente.
RedBean
RedBean est un framework PHP ORM léger et facile à utiliser qui prend en charge MySQL, SQLite et PostgreSQL. L'architecture RedBean est très flexible et le noyau est très simple. Les développeurs peuvent facilement étendre les fonctions via des plug-ins.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!