1 2 3 4 5 6 7 8 9 10 11 12 13 | { "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的地方就是
1 | include "orm.php"; |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | 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、在使用到的地方
引入类
1 | use Illuminate\Database\Capsule\Manager as DB; |
sql操作
1 | $items = DB::connection('sdk')->table('user')->where('id', '>', '1')->get(); |