用fwrite写入文件时,最后文件里的字符串的引号都被被反义加了\"或\',如何解决这个问题,让原来文件的字符串正常显示,而不是被反义。例如:
Inc.php 内容如下:$web_name = "四陀网";
$web_admin = "四陀";
$db_ip = "localhost";
$db_name = "sql_music";
$db_user = "sql_situo";
$db_password = "text_password";
……显示在网页中编辑,提交后用fwrite()写入到inc.php中,之后的inc.php的内容如下:$web_name = \"四陀网\";
$web_admin = \"四陀\";
$db_ip = \"localhost\";
$db_name = \"sql_music\";
$db_user = \"sql_situo\";
$db_password = \"text_password\";
……如何能使文件的内容不被反义呢?希望得到您的帮助:[email protected]谢谢!

解决方案 »

  1.   

    stripcslashes
    或者用字符串替换
    $str = str_ireplace("\\\"", '"', $str);
    $str = str_ireplace("\\'", "'", $str);
      

  2.   

    var_dump(get_magic_quotes_gpc());
    可以看到GET/POST/COOKIE的魔术引号是否打开..打开的时候默认会把这些字符转义
      

  3.   

    <?php
    set_magic_quotes_runtime(0); //程序里加上这句