alexccavaco / database
PHP MySQL 数据库查询构建器
0.1.7
2020-12-05 22:00 UTC
Requires
- php: >=5.3.0
- psr/log: >=1.1.0
README
PHP 数据库查询构建器
可以从以下四个类开始构建: DBDelete、DBInsert、DBSelect 和 DBUpdate
这些类对应于等效的 MySQL 查询。
安装
composer require alexccavaco/database
示例
选择查询
$r=DBSelect::from('table')
->select('*')
->where('column1 = ?', $data1)
->where('column2 = ?', $data2)
->orderBy('name')
->run($db);
$r->fetch(\PDO::FETCH_ASSOC);
删除查询
$r=DBUpdate::table('table')
->set('column','?',$param)
->setAll(['column'=>$param,'anotherCol'=>$param2])
->where('column = ?','data')
->run($db);
$r->fetch(\PDO::FETCH_ASSOC);
插入查询
$r=DBInsert::into('table')
->value('column1',$param1)
->value('column2',$param2,true) //The third parameter if true automatically sets On Duplicate Update
->values(['column'=>$param])
->run($db);
$r->fetch(\PDO::FETCH_ASSOC);
删除查询
$r=DBDelete::from('table')
->where('column = ?','data')
->limit(2)
->run($db);
$r->fetch(\PDO::FETCH_ASSOC);
可以创建复杂查询,使用连接(joins)、having... 等,但这些都是一些示例。
数据库类
此软件包包含一个数据库类。此类默认设置一些属性(例如使用异常处理错误和模拟预处理语句),其构造函数简化了字符集和时区设置。
包含两个函数:
- prepRun - 简化语句的准备,在返回之前准备和执行它们
- logStatement - 接收 PSR Logger 和日志类型,以记录每个查询和参数(用于调试)
此类完全可选。