设置Laravel的DB时,尝试动态生成它

问题描述 投票:1回答:1

DB的名称是板1,板2,板3,板4到板50.每次创建多个连接需要时间,每次添加时我都要做手工操作。

如果您喜欢database.php中的现有方法,则无法获得错误的解决方案?

for($board_no=1;$board_no<=50;$board_no++){
    'board'.$board_no => [
        'driver' => 'mysql',
        'host' => 'boardip',
        'port' => '3306',
        'database' => 'board'.$board_no,
        'username' => 'boardadmin',
        'password' => 'boardadminpassword',
        'unix_socket' => '',
        'charset' => 'utf8',
        'collation' => 'utf8_general_ci',
       'prefix' => null,
       'engine' => null
    ],
}
database laravel settings
1个回答
0
投票

要动态创建配置:

在您的控制器中执行此操作,它只会附加到“database.connections”配置。

Config::set('database.connections.key', array(
    'driver'    => 'mysql',
    'host'      => 'localhost',
    'database'  => 'dbname',
    'username'  => 'dbuser',
    'password'  => 'dbpass',
    'charset'   => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix'    => '',
));

然后您可以使用以下命令连接到数据库:

DB::connection('key');
© www.soinside.com 2019 - 2024. All rights reserved.