laravel5.5+配置多数据库读取功能流程步骤
最近刚好有个功能需要在laravel框架中用到多数据库读取,
看博客之前也没有写过这种文章,
所以记录一下
两个系统之间有些数据需要互传,
原本打算用beego写接口专门处理这种问题,
但是目前来看接口不多以后也不知道还增加不,
想了一下算了,
直接在laravel写然后设置好跨域就行了,方便维护
开始走流程
1.配置/config/database.php
'askdb' => [
'driver' => 'mysql',
'host' => env('DB_HOST_01', '127.0.0.1'),
'port' => env('DB_PORT_01', '3306'),
'database' => env('DB_DATABASE_01', 'forge'),
'username' => env('DB_USERNAME_01', 'forge'),
'password' => env('DB_PASSWORD_01', ''),
'unix_socket' => env('DB_SOCKET_01', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_general_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
],
2.配置.env
DB_HOST_01=xx
DB_PORT_01=3306
DB_DATABASE_01=xx
DB_USERNAME_01=root
DB_PASSWORD_01=xx
3.接口调用
//关联api
public function askcardnews()
{
$query = request()->input();
if (!isset($query['question_id']) || !is_numeric($query['question_id'])) {return 11;}
// connection: db
$ask_db = DB::connection('askdb');
dd($topics);
后面就正常db操作就OK了
//$ask_db->table('xx')->select('*')->where('id',1)->first();
}
看看效果:
相关文章