PHP Libraries, Frameworks and Tools

The PHP community has created a huge number of libraries to make working with MongoDB easier and integrate it with existing frameworks.

Libraries and Frameworks



ODM (Object Document Mapper) is an experimental Doctrine MongoDB object mapper. The Doctrine\ODM\Mongo namespace is an experimental project for a PHP 5.3 MongoDB Object Mapper. It allows you to easily write PHP 5 classes and map them to collections in MongoDB. You just work with your objects like normal and Doctrine will transparently persist them to MongoDB.

This project implements the same “style” of the Doctrine 2 ORM project interface so it will look very familiar to you and it has lots of the same features and implementations.


MongoDB Integration:

  • Drupal 8.x (8.x-2.x branch): client services, a watchdog implementation (PSR/3 logging)
  • Drupal 7.x (7.x-1.x branch): connection, a watchdog implementation (logging), block, cache, field storage, lock, path, queue, session.

EFQ Views:

  • Drupal 7.x: , Views (query builder) backend, using field storage from the main project.

Fat-Free Framework

Fat-Free is a powerful yet lightweight PHP 5.3+ Web development framework designed to help you build dynamic and robust applications fast.

Kohana Framework

Mango: An ActiveRecord-like library for PHP, for the Kohana PHP Framework.


Lithium supports MongoDB out-of-the-box.

Laravel Framework

  • Laravel MongoDB: A model and query builder with support for MongoDB, using the original Laravel API.
  • laravel-mongo: A MongoDB Library for Laravel and its micro-framework version, Lumen. Built on top of the official MongoDB PHP Library.

Symfony 2

Symfony 1


An extensive MVC 2 based PHP framework which supports MongoDB directly with only PHPMongo extension.


Thundergrid is a GridFS framework for PHP. Thundergrid is a simple framework written in PHP that allows you to rapidly store files in your MongoDB database using the GridFS specification.

Thundergrid gives you the ability to control exactly how you use GridFS in your scripts. It allows you to list, filter, and display objects within GridFS quickly and rapidly.



Vork, the high-performance enterprise framework for PHP, natively supports MongoDB as either a primary datasource or used in conjunction with an RDBMS. Designed for scalability & Green-IT, Vork serves more traffic with fewer servers and can be configured to operate without any disk-IO.

Vork provides a full MVC stack that outputs semantically-correct XHTML 1.1, complies with Section 508 Accessibility guidelines & Zend-Framework coding-standards, has SEO-friendly URLs, employs CSS-reset for cross-browser display consistency and is written in well-documented object-oriented E_STRICT PHP5 code.

An extensive set of tools are built into Vork for ecommerce (cc-processing, SSL, PayPal, AdSense, shipment tracking, QR-codes), Google Maps, translation & internationalization, Wiki, Amazon Web Services, Social-Networking (Twitter, Meetup, ShareThis, YouTube, Flickr) and much more.

Webiny Framework

Webiny Framework is an open source web development framework written in PHP 5.5. The Entity Component is a full-featured Object Document Wrapper for MongoDB. It provides simple creation and filtering of records on multiple collections. In combination with the Mongo Component it provides seamless integration.

You can download the library from our GitHub or you can use composer:

composer require webiny/framework


This is yet another, open source, and very simple ODM for MongoDB. It works like the standard MongoDB PHP extension interface but returns objects instead of arrays (as ODM). Queries stay the same. Provides driver level “joins,” that resolves related objects.

See: Yamop and Yamop for Laravel.


Yii MongoDB Driver is a Yii1 extension which plans on supporting Yii2.

mongoyii is a lightweight ActiveRecord-like support for MongoDB in Yii.


The Yii2 Framework includes a MongoDB Extension.

Zend Framework

  • Shanty Mongo is a prototype MongoDB adapter for the Zend Framework. It’s intention is to make working with MongoDB documents as natural and as simple as possible. In particular allowing embedded documents to also have custom document classes.
  • ZF Cache Backend for MongoDB: supports tags and auto-cleaning.

Phalcon Framework

Object-Document Mapper The ODM offers a CRUD functionality, events, validations among other services.

Stand-Alone Tools

Autocomplete for IDEs

PeclMongoPhpDoc gives IDEs information about the Pecl extension to help with autocomplete and docs.



Comfi is a MongoDB PHP ORM (part of Homebase Framework)


Mongofill is a pure PHP implementation of the mongo PECL extension, which means that it can be used with HHVM. Additionally, the mongofill-hhvm package provides a libbson extension for HHVM for more performant BSON encoding and decoding.


Mongofilesystem is a filesystem based on MongoDB GridFS. It will help you use MongoDB GridFS like a typical filesystem, using the familiar PHP commands.


Mandango is a simple, powerful, ultrafast Object Document Mapper (ODM) for PHP and MongoDB.

Mongator ODM

Mongator ODM is an easy, powerful and ultrafast ODM for PHP and MongoDB. (forked from Mandango project) Up-to-date and mantained, currently used in production.

MongoDB Pagination

PHP MongoDB Pagination is the pagination plugin for MongoDB released under MIT License. It is simple to install and use. It has been developed under TechMVC 3.0.4 but is compatible with any 3rd party framework (e.g. Zend (tested)).


MongoDb PHP ODM is a simple object wrapper for the MongoDB PHP driver classes which makes using MongoDB in your PHP application more like ORM, but without the suck. It is designed for use with Kohana 3 but will also integrate easily with any PHP application with almost no additional effort.


PHP message queue using MongoDB as a backend

Mongo-Queue-PHP page


MongoQueue is a PHP queue that allows for moving tasks and jobs into an asynchronous process for completion in the background. The queue is managed by MongoDB.

MongoQueue is an extraction from online classifieds site Oodle. Oodle uses MongoQueue to background common tasks in order to keep page response times low.


MongoRecord is a PHP MongoDB ORM layer built on top of the PHP MongoDB PECL extension.

MongoRecord is an extraction from online classifieds site Oodle. Oodle’s requirements for a manageable, easy to understand interface for dealing with the super-scalable MongoDB datastore was the primary reason for MongoRecord. It was developed to use with PHP applications looking to add MongoDB’s scaling capabilities while dealing with a nice abstraction layer.


Morph at GitHub is a high-level PHP library for MongoDB. Morph comprises a suite of objects and object primitives that are designed to make working with MongoDB in PHP a breeze.


simplemongophp at GitHub is a simple layer for using data objects. See blog post.


Mongodm is a simple and flexible PHP MongoDB ORM that includes support for references (lazy loading,) and multilevel inheritance.


kanon-mongo is a simple memory-safe PHP MongoDB ORM. Requirements: PHP >= 5.3, PECL mongoclient >= 1.3.0


PHPMongo is a ODM with support of validating, relations, events and behaviors.


MongoFilesystem <> is a filesystem implementation on top of MongoDB. The library manages file/folder hierarchy by using GridFS and standard collections. It has a rich API and JSON/XML/HTML renderers as well.


Yadm is a MongoDB ODM based on the new mongodb extension. It is schema-less and supports fast object hydration and persistence.

Blogs & HOWTOs

How to batch import JSON data output from FFprobe for motion stream analysis

FFprobe is a stream analyzer that optionally reports in JSON. This example is a PHP script that reads JSON from STDIN, makes an object using json_decode, and inserts the object into a MongoDB database. This script could be used with any program that outputs a JSON stream. A bash script will be used to batch process all files within the current directory. For example, the data may be used for analysis and logging of a day’s shoot.