Dua \在文本字段中输入文本时

时间:2013-06-21 15:22:51

标签: php string textfield str-replace

我有一个简单的文本字段,客户可以输入他们的html / php代码。

在某些服务器上,一切正常,但是在我输入的时候就可以了:

\它保存为\\

所以我想用这样的代码删除它,但它不起作用:

$text = str_replace('\','',$text);

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

你可能正在寻找:

$text = str_replace('\\\\','\\',$text);

这会将所有\\替换为\或:

$text = str_replace('\\','',$text);

这将取代所有\

您需要使用\\(以及\\\\两个斜杠)的原因是要转义\,因为'\'本身正在转义结束引号,使你的字符串不完整。因此,您需要转义\,将其转换为'\\'

服务器之间存在差异的原因可能是magic quotes,您可以通过确保两个服务器具有相同的配置条目值来阻止上述代码。

而且,毕竟,只需拨打stripslashes(),就可以替换为N.B.指出,并且您将获得完全相同的结果。

答案 1 :(得分:0)

您始终可以使用ascii代码:

 $text="\ it's saved as \\";
  $text = str_replace(chr(92),'',$text);
  echo $text;

返回:

  

它保存为