Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tekintian/phpenv
php环境下 evn环境解析处理工具类库, 支持自定义env文件加载, 自动类型过滤和转换,自动加载等功能。
https://github.com/tekintian/phpenv
env helper php
Last synced: about 9 hours ago
JSON representation
php环境下 evn环境解析处理工具类库, 支持自定义env文件加载, 自动类型过滤和转换,自动加载等功能。
- Host: GitHub
- URL: https://github.com/tekintian/phpenv
- Owner: tekintian
- Created: 2023-09-10T12:50:49.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2023-09-22T07:40:52.000Z (about 1 year ago)
- Last Synced: 2024-04-04T22:45:25.985Z (7 months ago)
- Topics: env, helper, php
- Language: PHP
- Homepage:
- Size: 312 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PHP .ENV环境变量解析工具
php环境下 evn环境解析处理工具类库, 支持自定义env文件加载, 自动类型过滤和转换,自动加载等功能。
## 使用方法:
### Composer 方式
1. Composer安装类库
~~~sh
# 加载env类库
composer require tekintian/phpenv
# 本类库依赖 vlucas/phpdotenv 和 phpoption/phpoption 上面的命令执行后这2个依赖会自动加载
~~~
2. 加载env环境配置文件和使用示例
注意 当前的入口文件位于 public 下,
~~~php
# 在你的项目的入口中增加
require_once dirname(__DIR__) . '/vendor/autoload.php';
# 加载自定义env文件
# Env::load(dirname(__DIR__), '.env');
# 直接使用 env 函数获取,支持默认数据和数据过滤和类型转换
$app_url = env("APP_URL");
var_dump($app_url);
# 获取int类型数据
$app_port = env("APP_PORT",80,'int');
# 获取 bool类型数据
$debug = env("APP_DEBUG",false,'bool');
# 其他还支持 int, float, bool, url ,ip, regexp, email, domain , string 数据过滤和验证,使用方法类似。
~~~
- 1.0.x版本使用方法
~~~php
# 在你的项目的入口中增加
require_once dirname(__DIR__) . '/vendor/autoload.php';
# 定义项目根目录
define('ROOT_PATH', dirname(__DIR__));
use tekintian\phpenv\Env;
# 如果你的.env文件不在项目根路径中,则需要手动执行Env::load加载
# 加载环境变量配置文件 注意第一个参数为env环境配置文件的路径, 第二个参数为环境配置文件名mor .env
#Env::load(dirname(__DIR__), '.env');
# 使用自定义助手函数获取配置
// $app_url = env("APP_URL", "");
# 直接使用Env对象获取
$app_url = Env::get("APP_URL");
var_dump($app_url);
~~~
3. .env 环境配置文件参考示例
~~~env
APP_NAME=Laravel
APP_ENV=local
APP_DEBUG=true
APP_URL=http://localhost
~~~## env 函数封装
~~~php
APP_URL=%s
APP_NAME=%s", $app_url, env('APP_NAME'));~~~
helper/helper.php 文件
~~~php
env('APP_NAME', 'MyApp'),
'env' => env('APP_ENV', 'production'),
'debug' => (bool) env('APP_DEBUG', false),
'url' => env('APP_URL', 'http://localhost'),
];~~~