温馨提示:这篇文章已超过524天没有更新,请注意相关的内容是否还可用!
本教程是非常经典的PHP同步修改配置文件示例教程,非常适合新手朋友学习。
主要学习了file_get_contents函数的读写方法,
file_get_contents函数读取文件的方法,示例:$info=file_get_contents("文件路径");
file_put_contents函数写入内容的方法,示例:file_put_contents("文件路径",写入内容变量);
文件结构:
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='' width=''>
<?php
//读取文件
$info=file_get_contents("config.php");
//var_dump($info);
//正则
preg_match_all('/define("(.*?)","(.*?)")/',$info,$arr);
//var_dump($arr);
//遍历
foreach($arr[] as $k=>$v){
echo "<tr>";
echo "<td>{$v}</td>";
echo "<td><input type='text' name='{$v}' value='{$arr[2][$k]}' /></td>";
echo "</tr>";
}
?>
<tr>
<td colspan='' align='center' >
<input type='submit' value='保存' />
<input type='reset' />
</td>
</tr>
</table>
</form>
</body>
</html>
config.php代码:
<?php
define("HOST","localhost3311");
define("USER","root3311");
define("PWD","");
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");
?>
以上案列用到了正则匹配的方法修改指定内容,不会正则的可以使用<<<EOF 和 EOF的方法直接修改整个文件的内容。
$newdata = <<<php
<?php
'www' = 'hu6.cc';
'm' = 'hu6.cc';
php;
还没有评论,来说两句吧...