首页 > 代码库 > PHP动态修改配置文件——php经典实例

PHP动态修改配置文件——php经典实例

文件结构:

index.php 主页

config  配置文件

doUpdate.php 修改功能页

技术分享

index.php

<html>
    <head>
        <title>修改配置</title>
        <meta charset=utf-8 />
    </head>
    
    <body>
        <form action=doUpdate.php method=post>
            <table border=1 width=300>
                <?php
                    //读取文件
                    $info=file_get_contents("config.php");
                    //var_dump($info);
                    
                    //正则
                    preg_match_all(/define\(\"(.*?)\",\"(.*?)\"\)/,$info,$arr);
                    //var_dump($arr);
                    
                    //遍历
                    foreach($arr[1] as $k=>$v){
                        echo "<tr>";
                            echo "<td>{$v}</td>";
                            echo "<td><input type=‘text‘ name=‘{$v}‘ value=http://www.mamicode.com/‘{$arr[2][$k]}‘ />";
                        echo "</tr>";
                    }
                ?>
                <tr>
                    <td colspan=2 align=center >
                        <input type=submit value=http://www.mamicode.com/保存 />
                        <input type=reset  />
                    </td>
                </tr>
            </table>
        </form>
    </body>
</html>

 

config.php

<?php
    define("HOST","localhost3311");
    define("USER","root3311");
    define("PWD","1231233311");
    define("DBNAME","test3311");

?>

 

doUpdate.php

<?php
    //读文件
    $info=file_get_contents("config.php");
    
    //var_dump($_POST);
    //die;
    //遍历$_POST
    foreach($_POST as $k=>$v){
        //正则替换
        $info=preg_replace("/define\(\"{$k}\",\".*?\"\)/","define(\"{$k}\",\"{$v}\")",$info);
    }

    //回填
    file_put_contents("config.php",$info);
    echo "ok";
    header("refresh:1;url=index.php");

?>

 

 下载地址:http://files.cnblogs.com/files/wordblog/config.zip

PHP动态修改配置文件——php经典实例