1、在composer.json加上对应的包,composer update
{
"require": {
"illuminate/database": "^6.18",
"doctrine/dbal": "^2.10",
"illuminate/events": "^6.18"
},
"repositories": {
"packagist": {
"type": "composer",
"url": "https://mirrors.aliyun.com/composer/"
}
}
}
2、建立配置文件在项目的入口文件引入,我是叫orm.php,我在入口文件index.php的地方就是
include "orm.php";
use Illuminate\Database\Capsule\Manager as Capsule;
use Illuminate\Events\Dispatcher;
use Illuminate\Container\Container;
$admin = [
'driver' => 'mysql',
'host' => '',
'database' => '',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
];
$sdk = [
'driver' => 'mysql',
'host' => '',
'database' => '',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
];
$capsule = new Capsule;
// 创建链接(多库配置)
$capsule->addConnection($admin,'default');
$capsule->addConnection($sdk,'sdk');
// 数据库查询事件
$capsule->setEventDispatcher(new Dispatcher(new Container));
// 设置全局静态可访问
$capsule->setAsGlobal();
Capsule::connection('default')->listen(function ($query) {
//这里是执行sql后的监听回调方法
$sql = vsprintf(str_replace("?", "'%s'", $query->sql), $query->bindings) . " [" . $query->time . ' ms] ';
// 把SQL写入到日志文件中
Debug::log($sql, 'info');
});
// 启动Eloquent
$capsule->bootEloquent();
3、在使用到的地方
引入类
use Illuminate\Database\Capsule\Manager as DB;
sql操作
$items = DB::connection('sdk')->table('user')->where('id', '>', '1')->get();