kristos80 / env-reader
1.0.0
2024-06-25 13:49 UTC
Requires
- php: >=8.2
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-25 14:34:37 UTC
README
EnvReader 包提供了一个简单灵活的方法来读取和操作 PHP 中的环境变量。它允许通过 $_ENV 超全局变量轻松检索和比较环境变量值,支持严格的比较和类型转换。
工作进行中(WIP)— 请勿在生产环境中使用
- 它尚未经过广泛的测试。
- 主要用于内部项目,可能会在没有事先通知的情况下发生破坏性更改。
- 可能缺少许多功能。
功能
- 检索环境变量:通过名称访问环境变量,支持回退默认值。
- 严格比较:可选地对环境变量名称执行大小写敏感的检查。
- 类型转换:自动将环境变量值转换为指定的类型(例如,数组、对象、字符串、整数)。
- 数组和支持对象:将 JSON 编码的环境变量值转换为数组或对象。
示例用法
use Kristos80\EnvReader; $envReader = new EnvReader(); // Retrieve a variable with optional strict comparison and type casting $databaseUrl = $envReader->get('DATABASE_URL', 'default_value', true, 'string'); // Check if an environment variable matches one of the possible values $isProduction = $envReader->equals(['ENVIRONMENT', 'APP_ENV'], ['production', 'prod'], true);
类参考
EnvReader
此最终只读类实现了 EnvReaderInterface
。
方法
equals
public function equals( string|array $possibleEnvNames, mixed $possibleEnvValues, bool $strict = FALSE, ?string $cast = NULL ): bool
参数
- $possibleEnvNames (string|array): 要检查的环境变量名称(s)。
- $possibleEnvValues (mixed): 要比较的值。
- $strict (bool): 是否在变量名称(s)中执行大小写敏感的比较。
- $cast (string|null): 可选的类型转换环境变量值(例如,'array'、'object'、'string')。
返回值: (bool): 如果环境变量值匹配可能的值之一,则为 true;否则为 false。
get
public function get( string|array $possibleEnvNames, mixed $default = NULL, bool $strict = FALSE, ?string $cast = NULL ): mixed
参数
- $possibleEnvNames (string|array): 要检索的环境变量名称(s)。
- $default (mixed|null): 如果未设置环境变量,则返回的默认值。
- $strict (bool): 是否在变量名称(s)中执行大小写敏感的搜索。
- $cast (string|null): 可选的类型转换环境变量值(例如,'array'、'object'、'string')。
返回值: (mixed): 环境变量的值,如果提供了指定类型,则转换为该类型,否则返回默认值。
贡献
请随时通过提交问题或拉取请求来贡献。确保您的代码符合项目的编码标准,并包含适当的测试。