在 PHP 中,我希望可以用 preg_replace 和一个正则表达式替换 all '
with\'
和 all "
with\"
和 all /
with来做到这一点\/
。
因此,将所有可以破坏字符串的字符替换为对应的转义字符。
这个
$string = str_replace(Array('"', "'"), Array('\"', "\'"), $string);
或这个
$string = addslashes($string);
应该做他的把戏。
我推荐第二个。第一个应该很好用。
preg_replace
可能会导致代码运行速度比其他选项慢很多。
str_replace和addlashes是很好的方法。使用preg_replace,不要忘记三个反斜杠:
$string = <<<'LOD'
I 'love' "marmots" \
LOD;
echo $string.'<br>'.preg_replace('~["\'\\\]~', '\\\$0', $string);
是的,你可以使用 preg_replace 来做到这一点,但在你的情况下,我可能会建议简单地使用str_replace()
or addslashes()
。