打开PHP文件,更改一个变量的值,保存

时间:2018-08-31 08:44:40

标签: php

我正在尝试通过脚本用文件$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> 

1 个答案:

答案 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

http://php.net/manual/en/function.file-get-contents.php

http://php.net/manual/en/function.file-put-contents.php