ENV Component vlucas/phpdotenv
Description
vlucas/phpdotenv is a component for loading environment variables, used to distinguish configurations for different environments (such as development, testing, etc.).
Project Address
https://github.com/vlucas/phpdotenv
Installation
composer require vlucas/phpdotenv
Usage
Create a .env file in the project root directory
.env
DB_HOST = 127.0.0.1
DB_PORT = 3306
DB_NAME = test
DB_USER = foo
DB_PASSWORD = 123456
Modify the configuration file
config/database.php
return [
// Default database
'default' => 'mysql',
// Various database configurations
'connections' => [
'mysql' => [
'driver' => 'mysql',
'host' => getenv('DB_HOST'),
'port' => getenv('DB_PORT'),
'database' => getenv('DB_NAME'),
'username' => getenv('DB_USER'),
'password' => getenv('DB_PASSWORD'),
'unix_socket' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => true,
'engine' => null,
],
],
];
Tip
It is recommended to add the.envfile to the.gitignorelist to avoid committing it to the code repository. Add a.env.exampleconfiguration sample file to the repository, and when deploying the project, copy.env.exampleto.envand modify the configurations in.envaccording to the current environment. This way, the project can load different configurations in different environments.Note
vlucas/phpdotenvmay have bugs in the PHP TS version (thread-safe version); please use the NTS version (non-thread-safe version).
The current version of PHP can be checked by executingphp -v.