最新赞助活动温馨提示:自愿赞助服务器费用,学生和没有工作的整站资源免费下载!
头像

php经典实例使用正则动态修改配置文件

来源:http://www.erdangjiade.com/ 沐浴春风 2016-09-23 16:56浏览(2111)

================================================ php基础示例--正则表达式--动态修改配置文件 ================================================ 一、相关的知识点: 正表达式: preg_match_all -- 进行全局正则表达式匹配 preg_replace -- 执行正则表达式的搜索和替换 文件的读和写 file_put_contents--文件写入函数 file_get_contents()--文件读取信息函数 二、实现步骤: 1.准备好一个配置文件:dbconfig.php 2. 定义一个edit.php,配置文件信息的编辑界面 a 读取配置文件的信息 b 使用正则表达式解析配置文件的信息 c 遍历解析后的信息,并输出到修改表单中 3. 定义一个doupdate.php执行配置文件信息的修改操作 (使用正则替换方式)

0、请不要问“在不在”之类的问题,有问题直接问!1、学生或暂时没有工作的童鞋,整站资源免费下载!2、¥9.9充值终身VIP会员,加我微信,826096331 拉你进VIP群学习!3、程序员加油,技术改变世界。 在线 充值

php经典实例使用正则动态修改配置文件
分类:PHP > 其他 难易:
查看演示 下载资源:

加我微信,拉你进VIP群学习:

下载资源 下载积分: 0 积分

本案例是通过php正则表达式的匹配,替换等相关操作,实现对配置文件信息的动态修改。增加了大家对正则表达式的实例应用和理解。

================================================
   php基础示例--正则表达式--动态修改配置文件
================================================
一、相关的知识点:
	正表达式:
		preg_match_all -- 进行全局正则表达式匹配
		preg_replace -- 执行正则表达式的搜索和替换
		
	文件的读和写
		file_put_contents--文件写入函数
		file_get_contents()--文件读取信息函数


二、实现步骤:
	
	1.准备好一个配置文件:dbconfig.php
	
	2. 定义一个edit.php,配置文件信息的编辑界面
		a 读取配置文件的信息
		b 使用正则表达式解析配置文件的信息
		c 遍历解析后的信息,并输出到修改表单中
		
	3. 定义一个doupdate.php执行配置文件信息的修改操作
	    (使用正则替换方式)
<?php
//执行配置文件的修改操作

//echo "<pre>";
//var_dump($_POST);
//echo "</pre>";

//1. 读取配置文件的信息
$info = file_get_contents("dbconfig.php");
//2.对POST遍历,并对配置文件信息进行正则替换
foreach($_POST as $k=>$v){
	$info = preg_replace("/define\(\"{$k}\",\".*?\"\)/","define(\"{$k}\",\"{$v}\")",$info);
}
//3. 将替换后的信息写回到配置文件中
file_put_contents("dbconfig.php",$info);

echo "<h2>修改成功!</h2>";
echo "<a href='edit.php'>返回</a>";
<?php
//编辑配置文件

$keyinfo = array("HOST"=>"主机","USER"=>"用户","PASS"=>"密码","DBNAME"=>"库名");


//1 读取配置文件的信息
$info = file_get_contents("dbconfig.php");//将dbconfig.php文件中信息读出并赋给info变量
//2 使用正则表达式解析配置文件的信息
preg_match_all("/define\(\"(.*?)\",\"(.*?)\"\)/",$info,$a); //将info中的信息解析到a变量中存储

echo "<pre>";
//var_dump($a);
echo "</pre>";
//3 遍历解析后的信息,并输出到修改表单中
echo "<h2>编辑配置文件</h2>";
echo "<form action='doupdate.php' method='post'>";

foreach($a[1] as $k=>$v){
	echo "{$keyinfo[$v]}:<input type='text' name='{$v}' value='{$a[2][$k]}'/><br/><br/>";
}

echo "<input type='submit' value='编辑'/>    ";
echo "<input type='reset' value='重置'/>";
echo "</form>";
评论1
头像

友情提示:垃圾评论一律封号 加我微信:826096331拉你进VIP群学习群

  • 头像 沙发
    03-01 16:02
    dwxlzy
    不错不错,收了。
1 2