我的代码:str_replace()用/在字符串中删除数值?
<?php
$string="img\1\EVS\Good Habits.mp41.png";
echo str_replace('\\','/',$string);
?>
输出:
img/EVS/Good Habits.mp41.png
我原来的字符串是:img\1\EVS\Good Habits.mp41.png
,但在输出它删除1
。
请告诉我,如果有人知道这个的原因?
我的代码:str_replace()用/在字符串中删除数值?
<?php
$string="img\1\EVS\Good Habits.mp41.png";
echo str_replace('\\','/',$string);
?>
输出:
img/EVS/Good Habits.mp41.png
我原来的字符串是:img\1\EVS\Good Habits.mp41.png
,但在输出它删除1
。
请告诉我,如果有人知道这个的原因?
从str_replace()
这不是故障。如果你这样做:
echo $string;
,你会看到已经是你失去了数有:
img\EVS\Good Habits.mp41.png
因为你的反斜杠转义1.因此,解决办法?
您必须在原始字符串中跳过反斜杠或将双引号更改为单引号,以便escape sequence
不再从PHP解释。
你的双引号内的'\ 1'被解释为chr(1)而不是文字'\ 1'。单引号您的$字符串('$ string ='img \ 1 \ EVS \ Good Habits.mp41.png';')或者转义斜线('$ string =“img \\ 1 \ EVS \ Good Habits.mp41。 PNG“;') –