PHPackages                             xjuvi/pdodb - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. xjuvi/pdodb

ActiveLibrary[Database &amp; ORM](/categories/database)

xjuvi/pdodb
===========

Modern, secure and fully compatible PDO-based replacement for ThingEngineer’s PHP-MySQLi-Database-Class

v2.0.0(1mo ago)21↑2900%MITPHPPHP &gt;=8.1

Since Jul 2Pushed 1mo agoCompare

[ Source](https://github.com/xJuvi/PDOdb)[ Packagist](https://packagist.org/packages/xjuvi/pdodb)[ RSS](/packages/xjuvi-pdodb/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)DependenciesVersions (17)Used By (0)

PDOdb – A Secure, Powerful MySQL Engine for PDO (PHP 8+)
========================================================

[](#pdodb--a-secure-powerful-mysql-engine-for-pdo-php-8)

PDOdb is a modern database wrapper and SQL builder for PHP 8+, built on top of PDO.
It offers full support for secure query building, prepared statements, dynamic joins, subqueries, transactions, and strict validation.

🔒 Safe by default.
⚙️ Fast, clean, extendable.
📘 Documentation:
👉

---

Features
--------

[](#features)

- Intuitive query builder (`get()`, `insert()`, `update()`, `delete()`)
- Smart `where*()` methods with type validation
- Nested queries, joins, subqueries, aliases
- Safe ORDER/GROUP clause parsing with heuristics
- Locking, transactions, pagination, bulk insert
- Inspired by [ThingEngineer/MySQLiDB](https://github.com/ThingEngineer/MysqliDb), but built for PDO with a similar API and strict SQL injection protection.

---

Installation
------------

[](#installation)

```
composer require decmuc/pdodb
```

---

Quick Example
-------------

[](#quick-example)

Two lines for 90% of queries. MySQL-first, prepared by default—no manual prepare() or binding.

```
$db->whereInt('id', 42);
$user = $db->getOne('users');

// Booleans made easy
$db->whereBool('status', true);
$users = $db->get('users');
// In short:
$users = $db->whereBool('status', true)->get('users');
// whereBool('status', 1) + get('users') is equivalent to
// SELECT * FROM users WHERE status = 1.
// false → 0 (or FALSE)
$users = $db->whereBool('status', false)->get('users');
// SELECT * FROM `users` WHERE `status` = 0

// Chaining with other conditions
$users = $db->whereBool('is_active', true)
   ->where('role', 'admin')
   ->orderBy('created_at', 'DESC')
   ->get('users');
```

For comprehensive documentation and more examples, visit the PDOdb docs:

---

📝 License / Lizenz
------------------

[](#-license--lizenz)

This project is licensed under the MIT License. See [LICENSE](LICENSE) for details

###  Health Score

41

—

FairBetter than 89% of packages

Maintenance90

Actively maintained with recent releases

Popularity5

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 91.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~18 days

Recently: every ~63 days

Total

16

Last Release

46d ago

Major Versions

v1.3.8 → v2.0.02026-03-28

### Community

Maintainers

![](https://www.gravatar.com/avatar/6b1f3c616944599fb62c1d7e2ca4a78e7d5538edf3604f4c75e4808b0014cc4c?d=identicon)[xJuvi](/maintainers/xJuvi)

---

Top Contributors

[![decMuc](https://avatars.githubusercontent.com/u/63890391?v=4)](https://github.com/decMuc "decMuc (88 commits)")[![xJuvi](https://avatars.githubusercontent.com/u/31671206?v=4)](https://github.com/xJuvi "xJuvi (8 commits)")

---

Tags

databaseormpdowrappermysqlithingengineer

### Embed Badge

![Health badge](/badges/xjuvi-pdodb/health.svg)

```
[![Health](https://phpackages.com/badges/xjuvi-pdodb/health.svg)](https://phpackages.com/packages/xjuvi-pdodb)
```

###  Alternatives

[sergeytsalkov/meekrodb

The Simple PHP/MySQL Library

341387.0k10](/packages/sergeytsalkov-meekrodb)[bephp/activerecord

micro activerecord library in PHP(only 400 lines with comments), support chain calls and relations(HAS\_ONE, HAS\_MANY, BELONGS\_TO).

1202.1k2](/packages/bephp-activerecord)[flightphp/active-record

Micro Active Record library in PHP, support chain calls, events, and relations.

163.0k](/packages/flightphp-active-record)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
