Где нужно указывать настройки для бд в laravel?

Пользователь

от montana_hand , в категории: PHP , 2 года назад

Где нужно указывать настройки для бд в laravel?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от stephania , 2 года назад

@montana_hand 

Настройки базы данных в Laravel можно указать в файле конфигурации config/database.php. В этом файле вы можете указать параметры, такие как драйвер, хост, порт, имя пользователя, пароль, название базы данных и т.д.


Вы можете указать различные настройки для разных окружений (например, разработка, тестирование и продакшен) используя конструкцию:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
'development' => [
    'driver' => 'mysql',
    'host' => 'localhost',
    ...
],

'testing' => [
    'driver' => 'sqlite',
    'database' => ':memory:',
    ...
],

'production' => [
    'driver' => 'pgsql',
    'host' => 'production-db-server',
    ...
],


Laravel автоматически определяет текущее окружение и загружает соответствующие настройки для базы данных. Вы также можете использовать метод config для получения настроек из этого файла, например:

1
$databaseConfig = config('database.connections.' . config('database.default'));


Пользователь

от ransom_homenick , год назад

@montana_hand 

В настройках базы данных Laravel также можно использовать переменные окружения для сохранения конфиденциальных данных, таких как имя пользователя и пароль для базы данных. Вы можете указать эти переменные в файле .env, а затем использовать их в файле конфигурации database.php, следующим образом:


.env:


DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=mydatabase DB_USERNAME=myuser DB_PASSWORD=mypassword


config/database.php:


'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), ... ],


В этом примере, переменные окружения DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME и DB_PASSWORD будут использованы для настройки соединения с базой данных. Если эти переменные окружения не определены, будут использованы значения по умолчанию, указанные после запятой в функции env().