eru123/venv
Composer 安装命令:
composer require eru123/venv
包简介
Load env files virtually
README 文档
README
Load env files virtually and isolated to $_ENV to add security layer on your data, with added extra tooling for convenience
Installation
composer require eru123/venv
Basic Usage
.env file
APP_ENV=development # variable in env file will only work if the # variable that was called is already defined. # NOTE: variable will only work on .env file DB_NAME=${APP_ENV}
index.php file
<?php require_once __DIR__ . '/vendor/autoload.php'; # Protect system environment variables # Move all system env variables to virtual env venv_protect(); # load .env file venv_load(__DIR__ . '/.env'); # Set app array venv_set('app', [ 'version' => '1.0.0', 'name' => 'php-venv', ]); # Modify app.name value using dot notation venv_set('app.name', 'php-venv2'); # Merge an array to virtual env # Note: dot notation will not work on this function, and might override array values # Note: array will be ignored if all elements are not key-value pair (can be potential bug if not used properly) venv_merge(['key' => 'pair'], ['this array will be ignored'], ['key2' => 'pair2']); # Get all virtual env variables print_r(venv()); # Get app.version value using dot notation print_r(venv('app.version'));
output
Array
(
[APP_ENV] => development
[DB_NAME] => development
[app] => Array
(
[version] => 1.0.0
[name] => php-venv2
)
[key] => pair
[key2] => pair2
)
1.0.0
Advanced Usage
Multiple keys check
If you want to use a primary, secondary, and so on keys in case the first key is not defined, you can pass keys in array format as the first parameter in venv() function.
$value = venv(['key1', 'key2', 'key3'], 'default value in case all 3 keys are not defined');
eru123/venv 适用场景与选型建议
eru123/venv 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 86 次下载、GitHub Stars 达 1, 最近一次更新时间为 2023 年 10 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 eru123/venv 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 eru123/venv 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 86
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 17
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Apache-2.0
- 更新时间: 2023-10-06