laravel5.5+配置多数据库读取功能流程步骤

2023-06-01 00:00:00 读取 步骤 流程

最近刚好有个功能需要在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();
           
}


看看效果:

1.png



相关文章