如何用fopen写变量名?

时间:2018-07-03 11:06:48

标签: php

我正在尝试写入配置文件,但问题是它不会显示$names

<?php 
    $myfile = fopen("config.php", "w") or die("Unable to open file!");
    $txt = "$dbname = '1'; $dbuser = '2'; $dbpass = '123'; $dbhost = 'localhost';\n"; 
    fwrite($myfile, $txt); 
    fclose($myfile);
?>

输出显示了我

= '1';  = '1';  = '123';  = 'localhost';

我需要他写变量名,需要一些帮助,谢谢!

1 个答案:

答案 0 :(得分:0)

您需要转义$符号:

 $myfile = fopen("config.php", "w") or die("Unable to open file!"); 
 $txt = " \$dbname = '1'; \$dbuser = '2'; \$dbpass = '123'; \$dbhost = 'localhost';\n"; 
 fwrite($myfile, $txt); fclose($myfile);

其他明智的使用单引号:

 $myfile = fopen("config.php", "w") or die("Unable to open file!"); 
 $txt = ' $dbname = "1"; $dbuser = "2"; $dbpass = "123"; $dbhost = "localhost";\n'; 
 fwrite($myfile, $txt); fclose($myfile);

说明

如果使用双引号而不是单引号,则会评估php中的

变量$ var。我认为,对于性能而言,如果其中的表达式是恒定的并且不需要求值,则最好避免使用双引号。