php字符串反斜杠后跟数字

时间:2016-08-24 20:04:02

标签: php

我有一个由文件路径设置的变量。路径是根据日期动态设置的

  $str = "IMAGES\2016\08\01\NM.jpg"

注意反斜杠后跟数字。这是由服务器设置的,我不能在它到达我的php文件之前改变它,但它似乎导致这些字符编码,从而使我的脚本中断。

我尝试使用str_replace将反斜杠更改为正斜杠但是根据我对the php manual on blackslashes的理解,它在函数有机会运行之前被编码。

我的问题是:

有没有办法改变php读取字符串的方式?或者有没有办法可以改变它以使其可用?

2 个答案:

答案 0 :(得分:0)

哇,我觉得自己像个白痴。

$str = 'IMAGES\2016\08\01\NM.jpg'

有效......用单引号......我想那就是当你整天盯着电脑屏幕时会发生什么。

答案 1 :(得分:0)

字符串$str中的反斜杠正在转义紧随其后的字符,您可以通过使用单引号来阻止此行为,或者;你可以使用反斜杠来逃避反斜杠(等待......)。

echo $str = "IMAGES\2016\08\01\NM.jpg";

结果:IMAGES?68\NM.jpg

echo $str = "IMAGES\\2016\\08\\01\\NM.jpg";

结果:IMAGES\2016\08\01\NM.jpg

除此之外:您可以使用str_replacepreg_replace将每个反斜杠替换为两个反斜杠。