PHP基础示例:用正则表达式修改配置信息

<?php

//配置文件信息



    define("HOST","localhost"); //主机名

    define("USER","rootaaaa");      //用户名

    define("PASSWORD","root123456");  //密码

    define("DBNAME","mydb");    //数据库名

 

<?php



//执行配置文件的修改操作



//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"=>"用户","PASSWORD"=>"密码","DBNAME"=>"数据库名");



//1.读取配置文件的信息

$info = file_get_contents("dbconfig.php");//将dbconfig.php文件中信息读出并赋值给info变量

//2.使用正则表达式解析配置文件的信息

preg_match_all("/define\(\"(.*?)\",\"(.*?)\"\)/",$info,$a);//将info中的信息解析到a变量中存储

//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='编辑' />&nbsp";

echo "<input type='reset' value='重置' />";

echo "</form>";

 

你可能感兴趣的:(正则表达式)