## Aperçu de l'architecture

Cet article explique comment tous les différents composants du pilote PHP s'emboîtent, des bibliothèques système de base, à l'extension, et aux bibliothèques PHP en haut.

En haut de cette pile se trouve une » librairie PHP, qui distribue un » package Composer. Cette librairie fournit une API cohérente avec d'autres » drivers MongoDB et implémente diverses » specifications croisées. Bien que l'extension puisse être utilisée directement, la librairie a un surcoût minimal et devrait être une dépendance commune pour la plupart des applications construites avec MongoDB.

En dessous de cette bibliothèque se trouve une extension PHP, qui est distribuée via » PECL. L'extension forme la colle entre PHP et nos bibliothèques système (» libmongoc, » libbson, et » libmongocrypt). Son API publique fournit uniquement les fonctionnalités les plus essentielles :

- Gestion de connexions
- Encodage et décoage BSON
- Sérialisation et désérialisation de documents (support des librairies ODM)
- Exécution de commandes, requêtes, et opérations d'écriture
- Gestion des curseurs pour les résultats de commandes et de requêtes

Code source du pilote et projets JIRA
Project | GitHub | JIRA
--- | --- | ---
Librairies PHP | » mongodb/mongo-php-library | » PHPLIB
Extensions PHP | » mongodb/mongo-php-driver | » PHPC