我正在尝试通过脚本用文件$denumire produs=' ';
形式的代码通过脚本来修改php文件_inc.config.php
中变量index.php
的值,但出现一些错误。
变量的新值将变为通过键盘从键盘输入的值。
有人可以帮助我吗?
<?php
if (isset($_POST['modify'])) {
$str_continut_post = $_POST['modify'];
if (strlen($_POST['search']) > 0 || 1==1) {
$fisier = "ask003/inc/_inc.config.php";
$fisier = fopen($fisier,"w") or die("Unable to open file!");
while(! feof($fisier)) {
$contents = file_get_contents($fisier);
$contents = str_replace("$denumire_produs =' ';", "$denumire_produs ='$str_continut_post';", $contents);
file_put_contents($fisier, $contents);
echo $contents;
}
fclose($fisier);
die("tests");
}
}
?>
<form method="POST" action="index.php" >
<label>Modifica denumire baza de date: </label>
<input type="text" name="den">
<button type="submit" name="modify"> <center>Modifica</center></button>
</div></div>
</form>
答案 0 :(得分:1)
这是一个XY问题(http://xyproblem.info/)。
与其让某种类型的系统开始重写自己的文件,不如让具有要更改的变量的文件加载json配置文件?
{
"name": "Bob",
"job": "Tea Boy"
}
然后在脚本中:
$json = file_get_contents('/path/to/config.json');
$config = json_decode($json, true);
$name = $config['name'];
更改配置中的值就像对数组进行编码并将json放入文件一样简单。
$config['denumireProdu'] = 'something';
$json = json_encode($config);
file_put_contents('/path/to/config.json', $json);
这比让PHP重写自己要明智得多!
这些命令的文档:
http://php.net/manual/en/function.json-decode.php
http://php.net/manual/en/function.json-encode.php