php读取配置文件
2020-04-28 00:23
731 查看
根据think\Env摘出来改造,可以拿来直接用。
<?php class Env { const ENV_PREFIX = 'PHP_'; /** * 加载配置文件 * @access public * @param string $filePath 配置文件路径 * @return void */ public static function loadFile(string $filePath):void { if (!file_exists($filePath)) throw new \Exception('配置文件' . $filePath . '不存在'); //返回二位数组 $env = parse_ini_file($filePath, true); foreach ($env as $key => $val) { $prefix = static::ENV_PREFIX . strtoupper($key); if (is_array($val)) { foreach ($val as $k => $v) { $item = $prefix . '_' . strtoupper($k); putenv("$item=$v"); } } else { putenv("$prefix=$val"); } } } /** * 获取环境变量值 * @access public * @param string $name 环境变量名(支持二级 . 号分割) * @param string $default 默认值 * @return mixed */ public static function get(string $name, $default = null) { $result = getenv(static::ENV_PREFIX . strtoupper(str_replace('.', '_', $name))); if (false !== $result) { if ('false' === $result) { $result = false; } elseif ('true' === $result) { $result = true; } return $result; } return $default; } } Env::loadFile('.env'); echo Env::get('database.hostname'); --------------------------------------------------------------------- .env文件格式 [database] hostname = 127.0.0.1 database = test username = root password = root123456 [payment] wx_appid = xxxxxx wx_appsecret = yyyyyy wx_mchid = zzzzzz
相关文章推荐
- flex 读取配置文件 与PHP交互 圆饼图
- flex 读取配置文件 与PHP交互 圆饼图
- 配置文件读取类conf.class.php 单例模式应用
- <h1>读取配置文件失败</h1>这通常意味着文件中有语法错误,请检查下面显示出的错误。<br /><br /><iframe src="show_config_errors.php" />
- php读取ini配置文件属性
- php中配置文件操作 如config.php文件的读取修改等操作
- php中配置文件操作 如config.php文件的读取修改等操作
- PHP读取配置文件、mysqli操作、session读写、url跳转
- PHP读取4种配置文件(php,ini,yaml,xml)
- 配置文件操作.如config.php文件的读取修改等操作
- php读取配置文件信息
- php读取四种配置文件
- php读取文件里面的数组做为配置文件
- ZendFramework学习第三章(核心组件—使用配置数据之从php配置文件中读取数据)
- php读取ini配置文件属性
- xml做mysql的配置文件及php对配置文件信息的读取 连接数据库
- PHP源码:读取 ini 文件配置信息
- 读取、设置 php.ini配置文件(复制)
- PHP读取文件中的数组作为配置文件
- php自定义配置文件的读取