novemb3r / envision
一个轻量级库,将输入法功能带到环境变量中
v5.1.1
2021-07-12 14:07 UTC
Requires
- php: >=7.2
Requires (Dev)
- orklah/psalm-strict-visibility: ^2.0
- phpstan/phpstan: ^0.12.88
- phpunit/phpunit: ^8.5
- squizlabs/php_codesniffer: ^3.6
- vimeo/psalm: ^4.7
README
将类型引入你的环境变量的最简单库!
安装
此库作为Composer包安装
$ composer require novemb3r/envision
或
{ "require": { "novemb3r/envision": "dev-master" } }
用法
示例
布尔值
获取布尔变量(默认为false)
Envision::getBool('FOO');
或使用 true
作为默认值
Envision::getBool('FOO', true);
布尔环境变量 应该 声明如下
B1=true
B2=True
B3=TrUe
B4=TRUE # because Envision converts boolean variables to lovercase
而 不应该 声明如下
BW1=1 BW2=yes BW3=positive BW4=ok
数字类型
获取整数或浮点数
Envision::getInt('FOO'); Envision::getFloat('FOO', 3.141592);
字符串
获取字符串
Envision::getString('FOO'); Envision::getString('FOO', 'default');
数组
获取指定如下格式的数组
FOO=v1,v2,v3
FOO2=v1,v2,v3,
FOO3=v1/v2/v3
通过传递分隔符(默认为 ,
)
Envision::getArray('FOO'); Envision::getArray('FOO1', ','); Envision::getArray('FOO3', ',', ['v2']);
配置
Envision有一系列选项来控制其行为。默认行为是不在 $_ENV
和 $_SERVER
数组中查找环境变量。如果你使用 symfony/dotenv 组件来加载 .env 文件,这是可以的。但你可以使用以下方式来更改此设置
Envision::$options = Envision::USE_ENV_ARRAY | Envision::USE_SERVER_ARRAY;
此外,你可以配置 Envision,如果找不到环境变量,则抛出 InvalidArgumentException
Envision::$options = Envision::ON_EMPTY_THROW;
或如果变量格式无效
Envision::$options = Envision::ON_INVALID_THROW;
默认情况下,Envision会在空值时返回默认值,并在无效值时抛出 InvalidArgumentException
,这等于
Envision::$options = Envision::ON_EMPTY_RETURN_DEFAULT | Envision::ON_INVALID_THROW;
测试
要执行测试套件,请运行
$ composer test
始终保持测试覆盖率在100%,并在进行任何更改之前始终运行
$ composer prepare-push
测试