php配置实例,8.12 修改配置文件的实例

我们来看看国内知名论坛discuz的安装界面:

![document/2015-09-09/55efe39f5ac66](http://box.kancloud.cn/document_2015-09-09_55efe39f5ac66.png)

在这儿安装,它怎么就修改了config.inc.php文件呢?

下面我们来通过几个简单的技术来揭开它所谓的神秘面纱!

文件规划:

1. index.php -- 展示修改界面

2. edit.php -- 修改功能代码

3. config.php -- 实际的修改部份

index.php 展示修改界面。将config.php中的配置项展示出来。展示到表单中:

~~~

include 'config.php';

?>

~~~

2.edit.php 读取config.php文件,将这个文件视为字符串。我然后使用正则表达示匹配来修改内容。

~~~

$string=file_get_contents('config.php');

//DB_HOST localhost

foreach($_POST as $key=>$val){

//定义正则来查找内容,这里面的key为form表单里面的name

$yx="/define\('$key','.*?'\);/";

//将内容匹配成对应的key和修改的值

$re="define('$key','$val');";

//替换内容

$string=preg_replace($yx,$re,$string);

}

//写入成功

file_put_contents('config.php',$string);

echo '修改成功';

?>

~~~

config.php 实际存储配置文件的部分,存储了真实的config.php文件内容:

~~~

define('DB_HOST','localhost');

define('DB_USER','liwenkai');

define('DB_PWD','facai');

define('DB_NAME','hehaoduopijiu');

?>

~~~

你是不是发现,这些其实并没有想象中的那么难。结合一下正则表达示和文件的知识就做到了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值