hunnomad/classdatabase
Composer 安装命令:
composer require hunnomad/classdatabase
包简介
Lightweight multi-driver database wrapper (PDO, MongoDB, Redis) with simple CRUD, rawQuery and transaction helpers.
README 文档
README
Overview
classDatabase is a lightweight, framework‑agnostic PHP 8+ multi‑driver database wrapper supporting:
- PDO drivers (MySQL, PostgreSQL, SQL Server, Oracle)
- MongoDB
- Redis (native functions)
Includes:
- Unified CRUD methods
- rawQuery() for direct SQL execution
- Full transaction support
- Native connection access (
getConnection())
Features
- 🚀 Multi‑driver support
- 🔧 Simple CRUD (
insert,select,update,delete) - 🧪 rawQuery() automatic SELECT/non‑SELECT detection
- 🔒 Transactions:
begin(),commit(),rollback() - 🧩 100% framework‑independent
- 🗄 Works with legacy code via
getConnection()
Installation (Composer)
If using Packagist:
composer require hunnomad/classdatabase
For path‑based local development:
{
"repositories": [
{ "type": "path", "url": "../hunnomad-classdatabase" }
]
}
Then:
composer require hunnomad/classdatabase:dev-main
Usage Examples
1. MySQL (PDO)
use HunNomad\Database\Database; $db = new Database('localhost','example','root','pass','3306','mysql'); $pdo = $db->getConnection(); // native PDO
INSERT
$id = $db->insert('users', [ 'name' => 'John Doe', 'email'=> 'john@example.com' ]);
SELECT
$rows = $db->select('users', ['status'=>1], [ 'order'=>'id DESC', 'limit'=>20 ]);
UPDATE
$db->update('users', ['status'=>0], ['id'=>5]);
DELETE
$db->delete('users', ['id'=>5]);
2. rawQuery() Example
$rows = $db->rawQuery( "SELECT * FROM users WHERE email = :email", ['email' => 'john@example.com'] );
Write operations:
$affected = $db->rawQuery( "UPDATE users SET last_login = NOW() WHERE id=:id", ['id'=>5] );
3. Transactions
$db->begin(); try { $db->insert('logs', ['msg'=>'Test']); $db->update('users', ['active'=>1], ['id'=>10]); $db->commit(); } catch (Throwable $e) { $db->rollback(); }
4. MongoDB Example
$db = new Database('localhost','mydb','user','pass','27017','mongodb'); $id = $db->insert('users', ['name'=>'Sarah']); $docs = $db->select('users', ['name'=>'Sarah']); $db->update('users', ['active'=>true], ['name'=>'Sarah']); $db->delete('users', ['active'=>false]);
5. Redis Example
$db = new Database('localhost','', '', 'pass','6379','redis'); $redis = $db->getConnection(); $redis->set('foo','bar'); echo $redis->get('foo');
Note: CRUD is not provided for Redis, use native Redis methods.
Directory Structure
classdatabase/
├─ src/Database.php
├─ examples/
│ └─ example.php
├─ README.md
├─ CHANGELOG.md
├─ composer.json
└─ LICENSE
License
MIT License
© 2025 HunNomad (Zsolt Boszormenyi)
hunnomad/classdatabase 适用场景与选型建议
hunnomad/classdatabase 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 43 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 01 月 30 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 hunnomad/classdatabase 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 hunnomad/classdatabase 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 43
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 14
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-01-30