initphp / dotenv
DotENV 库/包
2.0.1
2023-07-30 13:44 UTC
Requires
- php: >=5.6
README
从 .env
或 .env.php
文件中加载环境变量。
要求
- PHP 5.6 或更高版本
安装
composer require initphp/dotenv
使用
注意:以任何非字母数字字符开头的行被视为注释,不会被处理。
注意:在 $_SERVER
或 $_ENV
全局变量中现有的定义不会被处理。
.env
文件
请注意,.env 文件是外部可访问的。为了防止通过 .htaccess
访问,或者更好的做法是将 .env
文件放在一个外部无法访问的目录中。
/home/www/.env
:
# Comment Line
SITE_URL = http://lvh.me
PAGE_URL = ${SITE_URL}/page
; Comment Line
TRUE_VALE = true
EMPTY_VALUE = empty
FALSE_VALUE = false
NULL_VALUE = null
NUMERIC_VALUE = 13
PI_NUMBER = 3.14
any.php
:
require_once "vendor/autoload.php"; use \InitPHP\DotENV\DotENV; DotENV::create('/home/www/.env'); DotENV::get('TRUE_VALE'); // true DotENV::get('FALSE_VALUE'); // false DotENV::get('SITE_URL'); // "http://lvh.me" DotENV::get('PAGE_URL'); // "http://lvh.me/page" DotENV::get('EMPTY_VALUE'); // "" DotENV::get('NULL_VALUE'); // NULL DotENV::get('NUMERIC_VALUE'); // 13 DotENV::get('PI_NUMBER'); // 3.14 DotENV::get('NOT_FOUND', 'hi'); // "hi"
.env.php
/home/www/.env.php
:
<?php return [ 'SITE_URL' => 'http://lvh.me', 'PAGE_URL' => '${SITE_URL}/page', 'TRUE_VALE' => true, 'EMPTY_VALUE' => '', 'FALSE_VALUE' => false, 'NULL_VALUE' => null, 'NUMERIC_VALUE' => 13 ];
any.php
:
require_once "vendor/autoload.php"; use \InitPHP\DotENV\DotENV; DotENV::create('/home/www/.env.php'); DotENV::get('TRUE_VALE'); // true DotENV::get('FALSE_VALUE'); // false DotENV::get('SITE_URL'); // "http://lvh.me" DotENV::get('EMPTY_VALUE'); // "" DotENV::get('NULL_VALUE'); // NULL DotENV::get('NUMERIC_VALUE'); // 13 DotENV::get('NOT_FOUND', 'hi'); // "hi"
DotENV::create()
读取并定义一个 .env
或 .env.php
文件。
public function create(string $path, bool $debug = true): void;
$path
: 要上传的文件的路径。如果您定义了一个目录路径,Dotenv 将尝试自己搜索.env
或.env.php
文件。$debug
: 定义异常抛出状态。如果false
则不抛出异常。
注意:如果找不到文件,文件不是 .env
/.env.php
文件,或者不可读,它将抛出 \Exception
变体。
DotENV::get()
返回一个 ENV 值。
public function get(string $name, mixed $default = null): mixed;
注意:优先级顺序如下;
$_ENV
-> $_SERVER
-> getenv()
DotENV::env()
它是 Dotenv::get()
方法的别名。
public function env(string $name, mixed $default = null): mixed;
鸣谢
许可
版权所有 © 2022 MIT 许可证