devcoder-xyz / php-dotenv
PHP-DotEnv 是一个轻量级的 PHP 库,旨在简化您 PHP 应用程序中环境变量的管理。
Requires
- php: >=7.4
Requires (Dev)
- phpunit/phpunit: 9.6.3
README
简介
PHP-DotEnv 是一个轻量级的 PHP 库,旨在简化您 PHP 应用程序中环境变量的管理。它提供了一种优雅的解决方案,将配置值从 .env
文件加载到可通过 getenv()
、$_ENV
和 $_SERVER
访问的环境变量中。本文档旨在指导您了解 PHP-DotEnv 的安装、使用和功能。
安装
要安装 PHP-DotEnv,您可以使用 PHP 的依赖管理器 Composer。
Composer 要求
composer require devcoder-xyz/php-dotenv
要求
- PHP 版本 7.4 或更高
使用方法
1. 定义环境变量
在使用 PHP-DotEnv 之前,您需要在一个 .env
文件中定义您的环境变量。此文件应放置在项目的根目录中。文件中的每一行都应遵循 KEY=VALUE
格式。
APP_ENV=dev DATABASE_DNS=mysql:host=localhost;dbname=test; DATABASE_USER="root" DATABASE_PASSWORD=root MODULE_ENABLED=true NUMBER_LITERAL=0 NULL_VALUE=null
2. 加载变量
定义完环境变量后,您可以使用 PHP-DotEnv 将它们加载到您的 PHP 应用程序中。
<?php use DevCoder\DotEnv; $absolutePathToEnvFile = __DIR__ . '/.env'; (new DotEnv($absolutePathToEnvFile))->load();
3. 访问环境变量
加载后,您可以使用 PHP 的 getenv()
函数访问环境变量。
/** * Retrieve the value of DATABASE_DNS */ var_dump(getenv('DATABASE_DNS'));
自动类型转换
PHP-DotEnv 为某些类型的值提供自动类型转换
- 布尔值:处理为
true
或false
。 - 引号字符串:删除周围的引号。
- 空值:转换为
null
。 - 数值:转换为整数或浮点数。
处理器
PHP-DotEnv 允许您定义自定义处理器来处理 .env
文件中的特定类型的值。这些处理器使您能够控制值的解析和转换方式。
布尔值处理器
BooleanProcessor
将 .env
文件中指定的布尔值转换为 PHP 布尔类型(true
或 false
)。
MODULE_ENABLED=true
引号处理器
QuotedProcessor
从 .env
文件中的引号字符串中删除周围的引号。
DATABASE_USER="root"
空值处理器
NullProcessor
将字符串 "null" 转换为 PHP 的 null
值。
NULL_VALUE=null
数值处理器
NumberProcessor
将数值转换为整数或浮点数。
NUMBER_LITERAL=0
结论
PHP-DotEnv 为 PHP 应用程序中的环境变量管理提供了一种简单高效的方法。通过提供自动类型转换和可定制的处理器,它简化了从 .env
文件中加载和处理配置值的过程。无论您是在做一个小项目还是一个大型的应用程序,PHP-DotEnv 都可以帮助您简化开发流程并确保配置管理的顺畅。探索其功能,将其集成到项目中,并体验它为您的 PHP 开发工作流程带来的便利。