你这个index方法其实是在根目录下执行的,相对于根目录下的../Conf/config.php,你认为你会获取到吗?
一般都用绝对路径引用嘛,
况且tp里的配置文件可以自动加载的,手册上有。扩展配置部分吧应该
直接 require_once("config.php") 后, 这个文件里面的 变量就能用了.
写入配置:
<?php// .... 假设这些变量都已经更改过了, 譬如通过 post 更改设置, 这里已经拿到:
$cfg = "<?"
$cfg.=<<<EOF
php
\$cl_close=$cl_close
\$cl_weburl="$cl_weburl"
?
EOF
$cfg.=">"
file_put_contents("config.php", $cfg)
?>
大概这个样子, 就是用php 输出一份php文件~ php 的 include /require 很好用的.
其他建议方法, 采用json_encode/json_decode 来加载/保存配置为 Json格式, 譬如
声明一个配置类:
class Config {var $cl_close=0
var $cl_weburl="....."
/...
}
2. 读取配置:
if (file_exists("config.data")) {
$config = json_decode(file_get_contents("config.data")
}else{
$config = new Config()
$config->cl_close=...//初始化
}
echo $config->cl_close //访问
$config->cl_close=1 //修改
3. 写入配置:
$config=.... //假设已经读到
file_put_contents(json_encode($config))
以下为Discuz中的php config文件实例,请参考:
$_config = array()$_config['debug'] = 1
// ---------------------------- CONFIG DB ----------------------------- //
$_config['db']['1']['dbhost'] = 'localhost'
$_config['db']['1']['dbuser'] = 'x31_gbk'
$_config['db']['1']['dbpw'] = 'x31_gbk'
$_config['db']['1']['dbcharset'] = 'gbk'
$_config['db']['1']['pconnect'] = '0'
$_config['db']['1']['dbname'] = 'x31_gbk'
$_config['db']['1']['tablepre'] = 'pre_'
$_config['db']['slave'] = ''
$_config['db']['common']['slave_except_table'] = ''
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)