虎泰克博客

ThinkPHP修改配置文件参数值


由于想写一个后台管理,可以对系统数据库配置等conf.php内的内容进行修改,由于TP自带的C方法仅

由于想写一个后台管理,可以对系统数据库配置等conf.php内的内容进行修改,由于TP自带的C方法仅仅是动态修改,并没有把修改后的配置存储下来,因此萌生了此想法。

虎imkwc泰z克pxzw新kkhlc闻d_sp网_cw版权所有,请勿未授权转载!!!

思路就是读取将传过来的值foreach生成conf.php文件内数据格式写入edit.php,然后在conf.php内'LOAD_EXT_CONFIG' => 'config'即可,下面为代码。

function updateConfig($name=null, $value=null) {
    $path = APP_PATH.'/'.MODULE_NAME .'/Conf/edit.php';
    $config = include $path;
    $edit = is_array($name) ? $name : array("$name" => "$value");//自动识别批量修改还是单个
    $res = array_merge($config, $edit);
    $str = "<?php \r\n\treturn array(\r\n";
    foreach ($res as $key => $value){
        $str .= "\t\t".'\''.$key.'\''."\t=>\t".'\''.$value.'\''.','."\r\n";
    };
    $str .= "\t);\r\n?>";
    return file_put_contents($path, $str) ? true : false;
}

其中name参数可传入数组和字符串,传入字符串则会读取value参数的值生成一个key-value组成的数组



Oświadczenie: wszystkie artykuły / rysunki zamieszczone na tej stronie mają na celu przekazywanie więcej informacji i ułatwienie dyskusji, co nie oznacza, że strona internetowa, gospodarz i organizator zgadzają się z ich opiniami lub potwierdzają autentyczność ich treści. Zawartość tych artykułów jest tylko do odwołania. W przypadku naruszenia praw pierwotnego autora prosimy o kontakt z administratorem strony internetowej.

Wpisz się do komentarza

Lista komentarzy

    Brak danych