|
4 | 4 | PHP Libraries, Frameworks, and Tools |
5 | 5 | ==================================== |
6 | 6 |
|
7 | | -.. default-domain:: mongodb |
8 | | - |
9 | 7 | .. contents:: On this page |
10 | 8 | :local: |
11 | 9 | :backlinks: none |
12 | 10 | :depth: 2 |
13 | 11 | :class: singlecol |
14 | 12 |
|
15 | | -Stand-alone Libraries |
16 | | ---------------------- |
| 13 | +Standalone Libraries |
| 14 | +-------------------- |
| 15 | + |
| 16 | +- `Doctrine MongoDB ODM <https://github.com/doctrine/mongodb-odm>`__ (Object |
| 17 | + Document Mapper) is a library that provides object-mapping functionality for |
| 18 | + MongoDB. You can use the standalone library or use one of the following |
| 19 | + framework integrations: |
| 20 | + |
| 21 | + - `Symfony <https://github.com/doctrine/DoctrineMongoDBBundle>`__ |
| 22 | + - `Laminas <https://github.com/doctrine/DoctrineMongoODMModule>`__ (formerly Zend Framework) |
17 | 23 |
|
18 | | -- `Doctrine MongoDB ODM <https://github.com/doctrine/mongodb-odm>`_ is a library |
19 | | - that provides object mapping functionality for MongoDB. Integrations with |
20 | | - `Symfony <https://github.com/doctrine/DoctrineMongoDBBundle>`_ and |
21 | | - `Laminas <https://github.com/doctrine/DoctrineMongoODMModule>`_ (formerly Zend |
22 | | - Framework) are also available. |
| 24 | +- `Mongo PHP Adapter <https://github.com/alcaeus/mongo-php-adapter>`__ is a |
| 25 | + library designed to act as an adapter between applications that rely |
| 26 | + on the legacy ``mongo`` extension and the new ``mongodb`` extension. It |
| 27 | + offers the API of the legacy driver for the new driver and library. |
23 | 28 |
|
24 | | -- `Mongo PHP Adapter <https://github.com/alcaeus/mongo-php-adapter>`_ is a |
25 | | - userland library designed to act as an adapter between applications relying on |
26 | | - the legacy ``mongo`` extension and the new ``mongodb`` extension. It provides |
27 | | - the API of the legacy driver on top of the new driver and library, which |
28 | | - allows for compatibility with PHP 7. |
| 29 | +- `Mongolid <https://github.com/leroy-merlin-br/mongolid>`__ is a performant |
| 30 | + ODM for PHP and MongoDB. It implements both ActiveRecord and DataMapper |
| 31 | + design patterns and supports embedded and referenced documents. You can use |
| 32 | + this standalone library or use the `Laravel <https://github.com/leroy-merlin-br/mongolid-laravel>`__ |
| 33 | + integration. |
29 | 34 |
|
30 | | -- `Mongolid <https://github.com/leroy-merlin-br/mongolid>`_: A fast ODM for PHP and |
31 | | - MongoDB, which implements both ActiveRecord and DataMapper design patterns and |
32 | | - supports embedded and referenced documents. An integration with |
33 | | - `Laravel <https://github.com/leroy-merlin-br/mongolid-laravel>`__ is also available. |
| 35 | +- `Xenus <https://github.com/abellion/xenus>`__ is a MongoDB ODM |
| 36 | + that supports events, relationships, embedded documents, and more. You can |
| 37 | + use this standalone library or use the `Laravel <https://github.com/abellion/xenus-laravel>`__ |
| 38 | + integration, which adds support for failed jobs, migrations, and events. |
34 | 39 |
|
35 | | -- `Xenus <https://github.com/abellion/xenus>`_ is an elegant MongoDB ODM |
36 | | - that supports events, relationships, embedded documents, and more. An |
37 | | - integration with `Laravel <https://github.com/abellion/xenus-laravel>`__ is |
38 | | - also available, which adds support for failed jobs, migrations, and events. |
39 | 40 |
|
40 | 41 | Framework Integrations |
41 | 42 | ---------------------- |
42 | 43 |
|
43 | 44 | - Drupal |
44 | 45 |
|
45 | | - - `MongoDB integration for Drupal <https://www.drupal.org/project/mongodb>`_. |
46 | | - This is a collection of several modules which allow sites to store different |
47 | | - types of Drupal data in MongoDB. Support for the ``mongodb`` extension |
48 | | - exists for Drupal 8+. |
| 46 | + - `MongoDB integration for Drupal <https://www.drupal.org/project/mongodb>`__. |
| 47 | + This is a collection of several modules that allow sites to store different |
| 48 | + types of Drupal data in MongoDB. The ``mongodb`` extension supports |
| 49 | + Drupal 8 and later. |
49 | 50 |
|
50 | 51 | - Laravel |
51 | 52 |
|
52 | | - - `Laravel MongoDB <https://github.com/jenssegers/laravel-mongodb>`_: An |
53 | | - Eloquent model and Query builder with support for MongoDB, using the |
54 | | - original Laravel API. This library extends the original Laravel classes, so |
55 | | - it uses exactly the same methods. |
| 53 | + - `Laravel MongoDB <https://github.com/jenssegers/laravel-mongodb>`__ is an |
| 54 | + Eloquent model and Query builder that supports MongoDB by using the |
| 55 | + original Laravel API. This library extends the original Laravel classes |
| 56 | + and therefore uses the same methods. |
56 | 57 |
|
57 | 58 | - Symfony |
58 | 59 |
|
59 | | - - The components `Lock <https://symfony.com/doc/current/components/lock.html#mongodbstore>`_ and |
60 | | - `Session <https://symfony.com/doc/current/session.html#store-sessions-in-a-nosql-database-mongodb>`_ |
61 | | - can be configured to use MongoDB. |
| 60 | + - You can configure the `Lock <https://symfony.com/doc/current/components/lock.html#mongodbstore>`__ |
| 61 | + and the `Session <https://symfony.com/doc/current/session.html#store-sessions-in-a-nosql-database-mongodb>`__ |
| 62 | + to use MongoDB as a data store. |
62 | 63 |
|
63 | | - - `MongoDB Bundle <https://github.com/facile-it/mongodb-bundle>`_: A |
64 | | - simple bundle service integration for the official `PHP library |
65 | | - <https://github.com/mongodb/mongo-php-library>`_. Allows you to configure |
66 | | - connections to different databases or clusters and includes a convenient |
67 | | - query profiler. |
| 64 | + - `MongoDB Bundle <https://github.com/facile-it/mongodb-bundle>`__ is a |
| 65 | + bundle service integration for the official `PHP library <https://github.com/mongodb/mongo-php-library>`__. |
| 66 | + You can use it to configure connections to different databases or clusters. |
| 67 | + This integration includes a query profiler. |
68 | 68 |
|
69 | | - - `DoctrineMongoDBBundle Symfony <https://github.com/doctrine/DoctrineMongoDBBundle>`_ |
70 | | - This bundle integrates the Doctrine Object Document Mapper (ODM) into Symfony so |
71 | | - that you can persist and retrieve objects to and from MongoDB. |
| 69 | + - `DoctrineMongoDBBundle Symfony <https://github.com/doctrine/DoctrineMongoDBBundle>`__ |
| 70 | + This bundle integrates the Doctrine MongoDB ODM into Symfony so that you |
| 71 | + can store and retrieve objects from MongoDB. |
72 | 72 |
|
73 | 73 | - Yii2 |
74 | 74 |
|
75 | | - - `MongoDB Extension for Yii 2 |
76 | | - <https://www.yiiframework.com/extension/yiisoft/yii2-mongodb>`_ provides |
77 | | - MongoDB integration for Yii framework 2.0. |
| 75 | + - `MongoDB Extension for Yii 2 <https://www.yiiframework.com/extension/yiisoft/yii2-mongodb>`__ |
| 76 | + is a MongoDB integration for the Yii 2 framework. |
78 | 77 |
|
79 | | -Miscellaneous Projects |
80 | | ----------------------- |
| 78 | +Tools and Projects |
| 79 | +------------------ |
81 | 80 |
|
82 | | -- `PHP Cache <https://github.com/php-cache/mongodb-adapter/>` is a PSR-6 cache |
83 | | - implementation using MongoDB. It is a part of the PHP Cache organisation. |
| 81 | +- `PHP Cache <https://github.com/php-cache/mongodb-adapter/>`__ is a PSR-6 cache |
| 82 | + implementation that uses MongoDB as a cache pool. This project is part of |
| 83 | + the PHP Cache organization. |
84 | 84 |
|
85 | | -- `PHPfastcache <https://github.com/PHPSocialNetwork/phpfastcache>`_ provides a simple, |
| 85 | +- `PHPfastcache <https://github.com/PHPSocialNetwork/phpfastcache>`__ is a |
86 | 86 | high-performance backend cache system for MongoDB. |
87 | 87 |
|
88 | | -- `Enqueue <https://github.com/php-enqueue/mongodb>` is production ready, |
89 | | - battle-tested messaging solution for PHP. It provides a common way for programs |
90 | | - to create, send, read messages. |
| 88 | +- `Enqueue <https://github.com/php-enqueue/mongodb>`__ is a production-ready |
| 89 | + messaging solution that uses MongoDB as the message queue broker. It provides |
| 90 | + a common way for programs to create, send, and read messages. |
| 91 | + |
| 92 | +- `XHGui <https://github.com/perftools/xhgui>`__ is a web interface for the |
| 93 | + XHProf profiler, which stores profiling data in MongoDB. |
91 | 94 |
|
92 | | -- `XHGui <https://github.com/perftools/xhgui>`_, a web interface for the XHProf profiler |
93 | | - that stores profiling data in MongoDB. |
|
0 commit comments