PHP code example of chengf28 / dbquery
1. Go to this page and download the library: Download chengf28/dbquery library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
chengf28 / dbquery example snippets
use DBquery\DBquery;
$config = [
// 预留配置,可不填写,目前仅支持mysql
'dbtype' => 'MYSQL',
'host' => '127.0.0.1',
'port' => 3306,
'dbname' => 'databasesname',
'user' => 'root',
'pswd' => 'root'
];
DBquery::config($config);
DBquery::table('table_name')->all();
$config = [
'dbtype' => 'MYSQL',
'host' => '127.0.0.1',
'port' => 3306,
'dbname' => 'databasesname',
'user' => 'root',
'pswd' => 'root'
];
$config = [
// 预留配置,可不填写,目前仅支持mysql
'dbtype' => 'MYSQL',
'read' => [
'host' => '127.0.0.1',
'port' => 3306,
'dbname' => 'databasesname',
'user' => 'root',
'pswd' => 'root'
],
'write' => [
'host' => '127.0.0.1',
'port' => 3306,
'dbname' => 'databasesname',
'user' => 'root',
'pswd' => 'root'
],
];
$config = [
// 预留配置,可不填写,目前仅支持mysql
'dbtype' => 'MYSQL',
'read' => [
'host' => '127.0.0.1',
'port' => 3306,
'dbname' => 'databasesname',
],
'write' => [
'host' => '127.0.0.1',
'port' => 3306,
'dbname' => 'databasesname',
],
// 相同用户名和密码,其他配置相同也可以
'user' => 'root',
'pswd' => 'root',
];
$config = [
// 此处主要,一定要放在connects 作为key,值为数组,可以为 索引数组或者关联数组
'connects' => [
// 数据库配置,规则和上面的$config一致
[ // 第一个数据表的配置
'host' => '192.168.1.1',
],
[ // 第二个数据表的配置
'host' => '192.168.1.2',
...
]
]
]
// 默认使用第一个 即 connects[0] 的配置
DBquery::config($config);
// 切换其他数据库 ,第一个 connects[1]的配置
DBquery::connect(1);
/**
* 使用关联数组
*/
$config = [
'connects' => [
// 和上方配置区别在于,此处使用关联数组
'db1' => [
...
],
'db2' => [
...
]
]
]
// 默认使用第一个 即 connects['db1'] 的配置
DBquery::config($config); // 全局调用一次即可
// 切换其他数据库 ,第一个 connects['db2']的配置
DBquery::connect('db2');
...
// 操作后可以再次切换
DBquery::connect('db1');
...
$config = ['db1'=>[
// 预留配置,可不填写,目前仅支持mysql
'dbtype' => 'MYSQL',
'host' => '127.0.0.1',
'port' => 3300,
'write' => [
'dbname' => 'write_db',
],
'read' =>[
'dbname' => 'read_db',
],
'user' => 'root',
'pswd' => 'root',
'prefix' => 'tb_',
'datatype' => 'array', // 写明 为 array类型,不填写或其他类型字符串默认为object类型, 也可以是`PDO::FETCH_*`或者DBquery::arr 及 DBquery::obj;
],]
// 如果不想修改配置文件,只是临时修改获取的数据类型;
DBquery::config($config);
DBquery::setDataType(DBquery::arr);
DBquery::table('foo')->get(); // 获取数组类型的数据集
DBquery::setDataType(DBquery::obj); // 切换回object类型的数据集格式;
$config = [
// 预留配置,可不填写,目前仅支持mysql
'dbtype' => 'MYSQL',
'host' => '127.0.0.1',
'port' => 3306,
'write' => [
'dbname' => 'write_test',
],
'read' =>[
'dbname' => 'read_test',
],
'user' => 'root',
'pswd' => 'root',
'prefix' => 'tb_', // 可以在配置文件中添加表前缀
];
DBquery::config($config);
$db = DBquery::table('user'); // tb_user
$db->setPrefix('tb2_'); // tb2_user