Leaf PHP db module.

v2.1.1 2023-08-03 20:59 UTC

This package is auto-updated.

Last update: 2024-04-05 18:29:24 UTC



Leaf Db v3

Latest Stable Version Total Downloads License

Leaf DB has gone through yet another re-write. This time, Leaf DB focuses on maintaining a cleaner structure with more usable and grounded code. v3 supports more databases like postgres and sqlite, comes with some performance gains and is far more efficient than v1 and v2. It is also independent of the leaf core which makes it suitable for any project you run.

What's new?

DB Support

Leaf DB now supports connections with other databases like postgresql, sqlite, oracle and more.

Deep syncing with leaf 3

Leaf DB is now detached from leaf, however, as a leaf 3 module, there's additional functionality you can get from using leaf db in a leaf 3 app. Deep syncing config, instances and functional mode all become available to you.

PDO rewrite

Under the hood, Leaf DB has been rewritten to fully support PDO, both internally and user instantiated PDO instances. This makes leaf db more flexible and more compatible with most systems and applications.

Performance Improvements

After a series of benchmarks with ApacheBench, apps using leaf db v3 were almost twice as fast as apps using the prior version. These small performance wins can go a long way to improve the overall perfomance of your app drastically.


  • create
  • drop
  • insert with multiple fields
  • Connections with pgsql, oracle, sqlite and many more db types
  • Functional mode


You can easily install Leaf using Composer.

composer require leafs/db

Basic usage

After installing leaf db, you need to connect to your database to use any of the db functions.

$db = new Leaf\Db('', 'dbName', 'user', 'password');

# or

$db = new Leaf\Db();
$db->connect('', 'dbName', 'user', 'password');

If you're using leaf db in a leaf 3 app, you will have access to the db global

db()->connect('', 'dbName', 'user', 'password');

From there, you can use any db method.

$users = db()->select('users')->all();

You can find leaf db's complete documentation here. The docs are still being updated.