项目配置文件选择
.env
这种文件是在 laravel 框架里看到的,他是使用 phpdotenv composer 包来进行读取和使用的。
使用方法
加载 composer 包
composer require vlucas/phpdotenv
项目使用
<?php require __DIR__ . '/vendor/autoload.php'; $dotenv = Dotenv\Dotenv::create(__DIR__); $dotenv->load(); $projectName = getenv('project_name'); $projectName = $_ENV['project_name']; $projectName = $_SERVER['project_name'];
深入请查看项目的 README.md 文件。
yaml
YAML 试图用一种比 XML 更敏捷的方式,来完成XML所完成的任务。
安装配置
yaml 文件的使用是需要 php 加载 yaml 扩展的。yaml 扩展又依赖于 libyaml,下面以 centos7 系统为例安装:
# http://pecl.php.net/package/yaml 取最新扩展包地址 wget http://pecl.php.net/get/yaml-2.0.4.tgz # 解压 tar -zxvf yaml-2.0.4.tgz # 进行扩展文件夹 cd yaml-2.0.4 phpize vim install_sh > ./configure --with-php-config=/usr/local/php/bin/php-config # 编译安装 sh install_sh make -j 2 make install # php 加载扩展 vim /usr/local/php/etc/php.ini > extension=yaml.so
项目使用
<?php $config = yaml_parse_file(__DIR__ . '/config.yaml'); print_r($config['project_name']);
学习经过疑问
为什么不直接使用 php 文件当配置,而用其他类型文件来配置
好像没有什么特殊的作用,不管是 .env 还是 yaml 文件都需要配置,反而直接 php 文件当配置会方便易懂一些(.env/yaml 都有自己的语法,不懂的人需要学习)。
.env 在 linux 中是隐藏文件的意思,file_get_contents 读取不了隐藏文件?
小小试验了一下,只有文件有读取权限都可以读取的了里面的内容。
相关推荐
zhouyuqi 2020-11-10
xuebingnan 2020-08-24
zyyjay 2020-11-09
xuebingnan 2020-11-05
samtrue 2020-11-22
stefan0 2020-11-22
yifangs 2020-10-13
songshijiazuaa 2020-09-24
hebiwtc 2020-09-18
天步 2020-09-17
83911535 2020-11-13
whatsyourname 2020-11-13
Noneyes 2020-11-10
mathchao 2020-10-28
王志龙 2020-10-28
wwwsurfphpseocom 2020-10-28
diskingchuan 2020-10-23