zeyad82 / laravel-envx
Laravel 自定义环境变量与验证
v1.2.1
2019-01-07 10:40 UTC
Requires
- php: >=5.6.4
README
Laravel Envx 是一个自定义的 PHP 环境变量文件,作为数组使用,因此它可以具有关联数组和多维数组,并具有验证规则,以避免任何意外的行为,尤其是在有多个项目实例的情况下。这已经在 Laravel 5.6
和 5.7
上进行了测试。
亮点
- 确保在上线前包含所有必要的 envx.php 变量,并使用正确的值
- 使用 Laravel 验证器验证 envx.php 变量,通过在 config/envx-validator.php 中定义规则
- 自定义验证规则
required_ifany
,当另一个数组属性具有给定值时应用规则
用法
就像 laravel env => envx('attribute', 'default')
安装
通过 Composer
composer require zeyad82/laravel-envx
如果您不使用自动发现,请在 config/app.php
中添加服务提供者
Zeyad82\LaravelEnvx\LaravelEnvxServiceProvider::class,
发布配置文件
php artisan vendor:publish --tag="laravel-envx"
这将发布 config/envx-validator.php
和 envx.example.php
,然后运行
cp envx.example.php envx.php
如果您将使用不同的 envx.php,请将 envx.php
添加到项目根目录下的 .gitignore
如果您将在配置文件中使用 envx,唯一的方法是在 bootstrap/app.php
中 ExceptionHandler
后附加以下内容
$app->singleton('envx', function ($app) { return new Zeyad82\LaravelEnvx\EnvxService; });
示例配置文件
<?php // config/envx-validator.php return [ 'ARRAY' => 'required|array', 'ARRAY.*' => 'required|in:val1,val2,val3', 'ATTRIBUTE' => 'required_ifany:ARRAY,val1|url', ]
示例 envx.php 文件
<?php return [ 'ARRAY' => 'required|array', 'ARRAY.*' => 'required|in:val1,val2,val3', 'ATTRIBUTE' => 'required_ifany:ARRAY,val1|url', ];
截图
命令行
浏览器
安全
如果您发现任何与安全相关的问题,请通过电子邮件 zeyad82@yahoo.com 联系,而不是使用问题跟踪器。
致谢
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可。