This is my database connection which I have specified.
'mysql_test' => [
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database'=> '',
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
],
Now I am trying to change the database
value from the code and then connection to the database like this
for( $i = 1; $i <=4 ; $i++)
{
$db='test_'.$i;
DB::connection('mysql_test')->statement('CREATE DATABASE '.$db.';' );
Config::set('database.connections.mysql_test.database' , $db);
error_log(config('database.connections.mysql_test.database'));
DB::reconnect('mysql_test');
error_log(DB::connection('mysql_test')->getDatabaseName());
}
config
value is getting changed as on the first error_log
, I am getting my changed config
value. But when I connect back again to the same connection with the updated config, I am not getting my database name. Connection is not getting associated to any database.
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire