Php 替换打断字符串的字符的正则表达式

Php 替换打断字符串的字符的正则表达式,php,regex,Php,Regex,在PHP中,我希望可以使用preg_replace和regex将所有'替换为\',将所有“替换为\”和所有/替换为\//code> 因此,请用转义字符替换所有可以打断字符串的字符。是的,您可以使用preg\u replace来完成,但在您的情况下,我建议您只需使用str\u replace()或addslashes()是的,您可以使用preg\u replace来完成,但在您的情况下,我可能建议只使用str_replace()或addslashes()这个 $string = str_repla

在PHP中,我希望可以使用preg_replace和regex将所有
'
替换为
\'
,将所有
替换为
\”
和所有
/
替换为
\//code>


因此,请用转义字符替换所有可以打断字符串的字符。

是的,您可以使用preg\u replace来完成,但在您的情况下,我建议您只需使用
str\u replace()
addslashes()
是的,您可以使用preg\u replace来完成,但在您的情况下,我可能建议只使用
str_replace()
addslashes()

这个

$string = str_replace(Array('"', "'"), Array('\"', "\'"), $string);
还是这个

$string = addslashes($string);
他应该耍花招

我推荐第二种。第一个应该很好地发挥作用

preg\u replace
可能会导致代码运行速度比其他选项慢得多。

$string = str_replace(Array('"', "'"), Array('\"', "\'"), $string);
还是这个

$string = addslashes($string);
他应该耍花招

我推荐第二种。第一个应该很好地发挥作用

preg\u replace
可能会导致代码运行速度比其他选项慢得多。

str\u replace和addslashes是很好的方法。使用preg_替换时,不要忘记三个反斜杠:

$string = <<<'LOD'
I 'love' "marmots" \
LOD;

echo $string.'<br>'.preg_replace('~["\'\\\]~', '\\\$0', $string);
$string=str\u replace和addslashes是很好的方法。使用preg_替换时,不要忘记三个反斜杠:

$string = <<<'LOD'
I 'love' "marmots" \
LOD;

echo $string.'<br>'.preg_replace('~["\'\\\]~', '\\\$0', $string);

$string=
/
不要打断string您需要它做什么?
添加斜杠
?但你为什么要这么做?这可能是出于错误的原因。@m.buettne:除非他正在为另一个引擎创建表达式(如sql查询)@zerkms忘记我说的话,时间已经晚了。
/
不要打断字符串。你需要它做什么?
添加斜杠
?但你为什么要这么做?这可能是出于错误的原因。@m.buettne:除非他正在为另一个引擎创建表达式(如sql查询)@zerkms忘了我说的话,时间不早了。