用双斜杠替换单斜杠,php

时间:2011-04-12 07:44:30

标签: php

如何用双斜线替换单斜杠? 我有这样的文字:

"/data/folder/"

 and i need get

"//data//folder//"

我尝试使用替换,但得到错误:

$data = str_replace("\", "\\", $data);

4 个答案:

答案 0 :(得分:6)

您想要替换正斜杠,但str_replace正在反斜杠。

尝试:

$data = str_replace("/", "//", $data);

错误原因:

\用于转义。因此\中的"\"实际上是在逃离第二个"

答案 1 :(得分:5)

你在谈论反斜杠或普通斜线?无论如何,请检查以下代码:

$str = '\dada\dsadsa';
var_dump(str_replace('\\', '\\\\', $str));
$str = '/dada/dadda';
var_dump(str_replace('/', '//', $str));

答案 2 :(得分:3)

关于您收到错误的原因,反斜杠是用双引号"包装的字符串中的转义字符。你也需要逃避它们:

str_replace("\\", "\\\\", $data);  

根据你的说法,你可能想要使用斜杠而不是反斜杠,如@codaddict所示。

答案 3 :(得分:-1)

可以使用以下代码:

<?php  $str = addcslashes("Hello World!","W");?>  
<?php echo $str;?> <br/>    
<?php $str2 = addcslashes($str,"W");     
echo $str2;        
?>