博客

超级管理员

47975

帖子

11

回复

206

积分

楼主
发表于 2020-02-14 15:03:05 | 查看: 45 | 回复: 0

更新数据库配置, (事例基于thinkphp5.0);

亲测可用!

//更新数据库配置
    public function update_dbconfig()
    {   
        $dbConfig = [
            'type'            => 'mysql',
            'hostname'        => 'localhost',
            'database'        => 'laofan',
            'username'        => 'root',
            'password'        => 'root',
            'hostport'        => '3306',
        ];
           try {
                //读取系统配置内容
                $dbconfig_path = APP_PATH . 'database.php';
                $site_conf = htmlentities(file_get_contents($dbconfig_path));
                //替换配置项
                foreach ($dbConfig as $key => $value) {
                    $pats = '/\'' . $key . '\'(.*?)\',/';
                    $reps = "'". $key. "'". "           => " . "'".$value ."',";
                    $site_conf = preg_replace($pats, $reps, $site_conf); // 正则查找然后替换
                }
                if (!file_exists($dbconfig_path)) {
                    mkdir($dbconfig_path, 0777, true);
                }
                $result = file_put_contents($dbconfig_path, stripslashes(htmlspecialchars_decode($site_conf)));    
            } catch (\Exception $e) {
                return json(['staus'=>'1','message'=>'配置文件更新失败']); 
            }
            return json(['staus'=>'2','message'=>'配置文件更新完成']); 
      
    }

 


本帖子中包含资源

您需要 登录 才可以下载,没有帐号?立即注册

您需要登录后才可以回帖 登录 | 立即注册

2018-2020 ©v2.1 冀ICP备19027484号

点击这里给我发消息