来源
https://www.kancloud.cn/manual/thinkphp5/118026
问题
前台传值后台使用Config::set()方法写入config.php文件,但是并没有真正的写入config.php文件,只是在本控制器有效
解决
/** * ??修改config配置文件 * ??@method ?setconfig * ??deep * ??@param ??[array] ????$key ?[键] * ??@param ??[array] ????$value ?[值] * ??@return ?[boolean] ?[结果] */function setconfig($key, $value){ ???if (is_array($key) and is_array($value)) { ???????for ($i = 0; $i < count($key); $i++) { ???????????$keys[$i] = ‘/\‘‘ . $key[$i] . ‘\‘(.*?),/‘; ???????????$values[$i] = "‘". $key[$i]. "‘". "=>" . "‘".$value[$i] ."‘,"; ???????} ???????$fileurl = APP_PATH . "config.php"; ???????$string = file_get_contents($fileurl); //加载配置文件 ???????$string = preg_replace($keys, $values, $string); // 正则查找替换 ???????file_put_contents($fileurl, $string); // 写入配置文件 ???????return true; ???} else { ???????return flase; ???}}
使用正则真正的修改TP5的config.php文件
原文地址:https://www.cnblogs.com/wangyang0210/p/10185466.html