zoukankan      html  css  js  c++  java
  • 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>";
    
  • 相关阅读:
    合并两个排序的链表
    反转链表
    java网络编程之TCP通讯
    java网络编程之UDP通讯
    Java中的线程同步机制
    阿里研发工程师面试题三个小结
    Android开发的进阶之路
    获取一个字符串中每一个字母出现的次数使用map集合
    Android常见面试题目
    Java垃圾回收
  • 原文地址:https://www.cnblogs.com/vania/p/4680341.html
Copyright © 2011-2022 走看看