在 php 中将双反斜杠添加到单斜杠
Add double back slash to single in php
我已经搜索了很多并尝试了javascript replace()函数和str_replace,添加斜杠,带斜杠,但我没有得到正确的输出。
这就是我正在做的事情:
str_replace("''","''''", "C:wamp'www'desi'uploads'artist'bg'9.jpg";
我得到的输出是:
C:wampwwwÞsiuploads'A rtist'B g .jpg
然后我尝试了另一种方法:
var clean= "<?php echo str_replace("''","@",LINKCONSTANT); ?>".replace("@","''");
仍然没有任何想法?
这个问题不能
通过使用这样的str_replace来解决,因为双引号中的字符串将把斜杠作为转义序列处理。使用这样的str_replace并不能解决PHP(或javascript)处理字符串转义的问题 - 一旦你在字符串中有一个反斜杠,它就会非常忠实地停留在那里。
但是,字符串常量将在单引号中工作,如下所示:
'C:wamp'www'desi'uploads'artist'bg'9.jpg'
但正如其他地方指出的那样,Windows 中的目录分隔符在内部处理为"/"或"''",因此只需使用"/"(用于 API 调用)即可。
如果您希望输出一个可以安全地由javascript解析的字符串,请执行以下操作:
echo "var str = ".json_encode('C:wamp'www'desi'uploads'artist'bg'9.jpg').";";
它将以与 JavaScript 兼容的方式输出:
var str = "C:wamp''www''desi''uploads''artist''bg''9.jpg";
你要实现什么?将单个'
替换为 ''
?
请注意,
"''"
表示单个'
的字符串。这是因为'
在"..."
内部使用时前缀转义序列:
'r -> Return
't -> Tabular
'n -> Newline
由于''具有这种特殊含义,因此您需要编写''
来表示"...."
内部的单个'
。
因此,这会将$resultString
设置为C:wamp''www''desi''uploads''artist''bg''9.jpg
:
$sourceString = "C:wamp'www'desi'uploads'artist'bg'9.jpg";
$resultString = str_replace( "''", "''''", $sourceString );
相关文章:
- 在 php 中将双反斜杠添加到单斜杠
- 在JavaScript中将单反斜杠转义替换为双反斜杠
- Javascript 正则表达式将括号和单引号替换为斜杠
- Javascript字符串中的单转义和双转义(反斜杠)有什么区别
- JavaScript Regex添加了一个仅用于正斜杠的规则
- javascript/jquery将尾部斜杠添加到url(如果不存在)
- JavaScript 将 / 或 / 替换为单斜杠 /
- 锚标记 href 不是使用单斜杠而是使用双斜杠导航
- 添加安全斜杠以防止数组中的 xss
- Gtranstic插件在撇号之前添加反斜杠
- 使用 JavaScript 向 URL 添加尾部斜杠
- 如何在Backbone中向PUT请求添加尾部斜杠
- Javascript代码检查特殊字符,并在其前面添加双斜杠
- 如何将url中的双/多斜杠替换为单斜杠
- Javascript正则表达式将单斜杠替换为双斜杠
- Fullpage.js在标签和锚名之间添加了斜杠——ng-include会导致冲突
- 用Javascript将文本中的多个斜杠替换为单斜杠
- 字符串处理添加尾斜杠到自关闭标签(IMG, BR等)
- 让angularjs不要在每个单引号和双引号之前添加斜杠
- 在java和javascript中,在字符前添加双斜杠