parse_ini_file
* env.ini
[database]
type = mysql
hostname = 172.16.0.224
database = zkt_crm
username = root
password = Mzh123
hostport = 3306
[cache]
type = Redis
host = 172.16.0.224
port = 6379
password = Mzh123
* parse_ini_file.php
<?php
$env = parse_ini_file("env.ini", true);
var_dump($env);
echo $env['cache']['type'].PHP_EOL;
输出结果:
array(2) {
["database"]=>
array(6) {
["type"]=>
string(5) "mysql"
["hostname"]=>
string(12) "172.16.0.224"
["database"]=>
string(7) "zkt_crm"
["username"]=>
string(4) "root"
["password"]=>
string(6) "Mzh123"
["hostport"]=>
string(4) "3306"
}
["cache"]=>
array(4) {
["type"]=>
string(5) "Redis"
["host"]=>
string(12) "172.16.0.224"
["port"]=>
string(4) "6379"
["password"]=>
string(6) "Mzh123"
}
}
Redis
// 加载环境变量配置文件
if (is_file(ROOT_PATH . '.env')) {
$env = parse_ini_file(ROOT_PATH . '.env', true);
foreach ($env as $key => $val) {
$name = ENV_PREFIX . strtoupper($key);
if (is_array($val)) {
foreach ($val as $k => $v) {
$item = $name . '_' . strtoupper($k);
putenv("$item=$v");
}
} else {
putenv("$name=$val");
}
}
}