首页›数据库›DbFactory
DbFactory
Kuoqi\DbFactory(73 行):数据库实例工厂,两级分发
本页内容
- 分发流程
- 方法清单
分发流程
| # | 步骤 | 说明 |
|---|---|---|
| 1 | 取配置 | Db\Config 单例(读 DB 配置项,默认 target=Mysql/server=Pdo) |
| 2 | useConfig 覆盖 | 允许局部配置覆盖 |
| 3 | server 分发 | 仅支持 "Pdo"(stdConnect) |
| 4 | target 分发 | 仅支持 "Mysql"(stdConnectByPdoserver) |
| 5 | 实例化 | new MysqlDriver($cfgDriver, [ATTR_PERSISTENT=>true, ATTR_ERRMODE=>EXCEPTION]) |
方法清单
| 方法 | 签名 | 说明 |
|---|---|---|
getInstance | static getInstance($config=[],$opts=[]) | 获取驱动实例(同配置复用) |
stdConnect | stdConnect($cfgDriver) | server 层分发(仅 Pdo) |
stdConnectByPdoserver | stdConnectByPdoserver($cfgDriver) | target 层分发(仅 Mysql) |
stdConnectByPdoMysqlserver | stdConnectByPdoMysqlserver($cfgDriver) | 最终 new MysqlDriver |
典型用法
// 全局 M() 等价
$db = \Kuoqi\DbFactory::getInstance();
$rows = $db->table("user")->select();
// 局部覆盖配置
$db2 = \Kuoqi\DbFactory::getInstance(array(
"host" => "192.168.1.10",
"name" => "report_db",
));
KuoqiPHP v1.05 · 离线静态文档 · 界面基于 KuoqiUI ·
返回首页