|
@@ -2,6 +2,23 @@
|
|
|
|
|
|
use Illuminate\Support\Str;
|
|
|
|
|
|
+$databaseUrl = getenv('DATABASE_URL');
|
|
|
+$host = '';
|
|
|
+$username = '';
|
|
|
+$password = '';
|
|
|
+$database = '';
|
|
|
+$port = '';
|
|
|
+
|
|
|
+if (false !== $databaseUrl) {
|
|
|
+ $options = parse_url($databaseUrl);
|
|
|
+
|
|
|
+ $host = $options['host'] ?? '127.0.0.1';
|
|
|
+ $username = $options['user'] ?? 'forge';
|
|
|
+ $password = $options['pass'] ?? '';
|
|
|
+ $database = substr($options['path'] ?? '/forge', 1);
|
|
|
+ $port = $options['port'];
|
|
|
+}
|
|
|
+
|
|
|
return [
|
|
|
|
|
|
/*
|
|
@@ -53,11 +70,11 @@ return [
|
|
|
'mysql' => [
|
|
|
'driver' => 'mysql',
|
|
|
'url' => env('DATABASE_URL'),
|
|
|
- 'host' => env('DB_HOST', '127.0.0.1'),
|
|
|
- 'port' => env('DB_PORT', '3306'),
|
|
|
- 'database' => env('DB_DATABASE', 'forge'),
|
|
|
- 'username' => env('DB_USERNAME', 'forge'),
|
|
|
- 'password' => env('DB_PASSWORD', ''),
|
|
|
+ 'host' => env('DB_HOST', $host),
|
|
|
+ 'port' => env('DB_PORT', $port ?? '3306'),
|
|
|
+ 'database' => env('DB_DATABASE', $database),
|
|
|
+ 'username' => env('DB_USERNAME', $username),
|
|
|
+ 'password' => env('DB_PASSWORD', $password),
|
|
|
'unix_socket' => env('DB_SOCKET', ''),
|
|
|
'charset' => 'utf8mb4',
|
|
|
'collation' => 'utf8mb4_unicode_ci',
|
|
@@ -73,11 +90,11 @@ return [
|
|
|
'pgsql' => [
|
|
|
'driver' => 'pgsql',
|
|
|
'url' => env('DATABASE_URL'),
|
|
|
- 'host' => env('DB_HOST', '127.0.0.1'),
|
|
|
- 'port' => env('DB_PORT', '5432'),
|
|
|
- 'database' => env('DB_DATABASE', 'forge'),
|
|
|
- 'username' => env('DB_USERNAME', 'forge'),
|
|
|
- 'password' => env('DB_PASSWORD', ''),
|
|
|
+ 'host' => env('DB_HOST', $host),
|
|
|
+ 'port' => env('DB_PORT', $port ?? '5432'),
|
|
|
+ 'database' => env('DB_DATABASE', $database),
|
|
|
+ 'username' => env('DB_USERNAME', $username),
|
|
|
+ 'password' => env('DB_PASSWORD', $password),
|
|
|
'charset' => 'utf8',
|
|
|
'prefix' => '',
|
|
|
'prefix_indexes' => true,
|