thinkphp 3.2.3 动态修改conf配置文件

发布时间:2017-3-23 10:20:03 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"thinkphp 3.2.3 动态修改conf配置文件 ",主要涉及到thinkphp 3.2.3 动态修改conf配置文件 方面的内容,对于thinkphp 3.2.3 动态修改conf配置文件 感兴趣的同学可以参考一下。

thinkphp 3.2.3 的C()方法能修改配置文件,但是是储存在内存中,没有更改配置文件,  如果客户要自己配置网站信息,这完全没得搞,一刷新,还是原来的配置。

我查了网上网友分享的方法,都不合适,我就直接写了一个,我的目录如下:

代码写到IndexController.class.php  index方法中的, 代码如下:

<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
    public function index(){
       
       //文件路径地址
       $path = 'Application/'.MODULE_NAME .'/Conf/text.php';
      
       //thinkphp的配置文件是数组
       //测试数组如下:
       /*<?php 
           return array(
               'WEB_NAME'=>'我的博客',
               'WEB_AGE'=>'1480039258'
           ); 
       ?> */       
       
       //读取配置文件,
       $file = include $path;       
       
       //这里获取用户提交上来的配置文件 ,例如 'WEB_NAME' => I('web_name'),
       $config = array(
           'WEB_NAME' => 'T博客',
           'WEB_AGE' => '2333',
           'WEB_TITLE' => '博客管理系统'
       );
       
       
       //合并数组,相同键名,后面的值会覆盖原来的值
       $res = array_merge($file, $config);
       
       //数组循环,拼接成php文件
       $str = '<?php return array(';
       
       foreach ($res as $key => $value){
           // '\'' 单引号转义
           $str .= '\''.$key.'\''.'=>'.'\''.$value.'\''.',';
       };
       $str .= '); ?>';
      
       //写入文件中,更新配置文件
       if(file_put_contents($path, $str)){
           echo '保存成功!';
       }else {
           echo '保存失败!';

上一篇:C# ini文件操作【源码下载】
下一篇:Language

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款