Функция env
Функция env применяется для доступа к переменным окружения,
которые хранятся в файле .env в корне проекта Laravel.
Первым параметром передаётся имя переменной, вторым - значение
по умолчанию, которое будет возвращено, если переменная не найдена
или не задана. Если значение по умолчанию не указано, функция
вернёт null.
Синтаксис
<?php
env($key, $default);
?>
Пример
Давайте получим значение переменной окружения APP_ENV,
которая определяет текущее окружение приложения:
<?php
$appEnv = env('APP_ENV');
echo "Application environment: " . $appEnv;
?>
Результат выполнения кода:
"Application environment: local"
Пример
Давайте получим значение переменной APP_DEBUG,
которая включает или отключает режим отладки:
<?php
$isDebug = env('APP_DEBUG', false);
if ($isDebug) {
echo "Debug mode is enabled";
} else {
echo "Debug mode is disabled";
}
?>
Результат выполнения кода:
"Debug mode is enabled"
Пример
Давайте получим настройки подключения к базе данных из переменных окружения:
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Config;
class AppServiceProvider extends ServiceProvider
{
public function register()
{
$databaseName = env('DB_DATABASE', 'forge');
$databaseUser = env('DB_USERNAME', 'forge');
$databasePassword = env('DB_PASSWORD', '');
Config::set('database.connections.mysql.database', $databaseName);
Config::set('database.connections.mysql.username', $databaseUser);
Config::set('database.connections.mysql.password', $databasePassword);
echo "Database: " . $databaseName;
}
}
?>
Результат выполнения кода:
"Database: my_database"
Пример
Давайте получим значение несуществующей переменной с указанием значения по умолчанию:
<?php
$apiKey = env('API_KEY', 'default-api-key-12345');
echo "API Key: " . $apiKey;
?>
Результат выполнения кода:
"API Key: default-api-key-12345"
Пример
Давайте получим значение переменной без значения по умолчанию.
Если переменная не существует, функция вернёт null:
<?php
$configValue = env('NON_EXISTENT_VARIABLE');
if ($configValue === null) {
echo "Variable not found";
} else {
echo "Variable value: " . $configValue;
}
?>
Результат выполнения кода:
"Variable not found"