0

我想问一个非常简单的问题。

我正在从事一个输入代码的项目,比如说我输入的代码如下:

<?php
echo "Test";
?>

单击保存按钮后,此代码将保存到 php 文件中,例如testfile.php.

当我在 上运行此文件时windows 7 - wamp server,这是可以的,但是当我在其上托管此文件时000webhost.com,会linux server在 之前添加一些反斜杠 (\) " "。为了写入文件,我正在使用代码

$code = $_POST['yourcode'];
$openphp = fopen("testfile.php","w");
fwrite($openphp, $code);
fclose($openphp);

在 Linux 服务器中,此代码编写为:

<?php
echo \"test\";

?>

我不想保存这个反斜杠(\),我怎样才能在写文件时避免这种情况

4

3 回答 3

2

确保您的 Linux 服务器上的魔术引号已关闭:

http://php.net/manual/en/security.magicquotes.php

但是无论如何,如果没有任何转义或验证检查,您的脚本似乎很危险......

于 2013-06-20T08:22:19.283 回答
1

.htaccess在与脚本相同的文件夹中创建一个文件并添加以下内容

php_flag magic_quotes_gpc Off
于 2013-06-20T08:23:00.797 回答
0

您可以为此配置 php.ini

; Magic quotes
;

; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = Off

; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
;magic_quotes_runtime = Off

; Use Sybase-style magic quotes (escape ' with '' instead of \').
;magic_quotes_sybase = Off

或者在你的php文件的开头你可以设置它ini_set()

ini_set("magic_quotes_gpc", "Off");
于 2013-06-20T08:30:05.417 回答