thinkphp5或3.2 php動態修改config配置文件永久保存


thinkphp默認的參數方法只能讀取,或者動態修改不能永久修改。 這是自己摸索出來的特發出來給需要的朋友(懂的朋友別笑話,功能我自己使用是沒任何問題)。
有些參數還是保存在配置文件方便快捷!不一定所有的東西都是存數據庫才是王道!

參數可以傳遞多個值 只要2個數組的值對應就行 [0][1][2] 以此對應

如果需要動態修改數據的 將config 改為數據庫就行了 我是只要改config 所以是直接固定了!

/**
 * 修改config的函數
 * @param $arr1 配置前綴
 * @param $arr2 數據變量
 * @return bool 返回狀態
 */
function setconfig($pat, $rep)
{
    /**
     * 原理就是 打開config配置文件 然后使用正則查找替換 然后在保存文件.
     * 傳遞的參數為2個數組 前面的為配置 后面的為數值.  正則的匹配為單引號  如果你的是分號 請自行修改為分號
     * $pat[0] = 參數前綴;  例:   default_return_type
       $rep[0] = 要替換的內容;    例:  json
     */

    if (is_array($pat) and is_array($rep)) {
        for ($i = 0; $i < count($pat); $i++) {
            $pats[$i] = '/\'' . $pat[$i] . '\'(.*?),/';
            $reps[$i] = "'". $pat[$i]. "'". "=>" . "'".$rep[$i] ."',";
        }
        $fileurl = APP_PATH . "config.php";

        $string = file_get_contents($fileurl); //加載配置文件
        $string = preg_replace($pats, $reps, $string); // 正則查找然后替換
        file_put_contents($fileurl, $string); // 寫入配置文件
        return true;
    } else {
        return flase;
    }
}

 

 

 

 

 

轉:http://www.thinkphp.cn/code/4054.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM