防止php从输出中删除反斜杠
在我的网站上,我有一个PHP脚本,它接受多个源文件(HTML、CSS和javascript),对它们进行优化,将它们嵌入到页面中,并缓存它们(基本上是编译我的网站)。最近,我添加了(一个用于将JSON编码为字符串的jQuery插件),但部分代码包含多个斜杠(在某种正则表达式中使用): 当我前面提到的脚本处理这一行时,其中一个反斜杠被删除,并导致:防止php从输出中删除反斜杠,php,javascript,regex,backslash,Php,Javascript,Regex,Backslash,在我的网站上,我有一个PHP脚本,它接受多个源文件(HTML、CSS和javascript),对它们进行优化,将它们嵌入到页面中,并缓存它们(基本上是编译我的网站)。最近,我添加了(一个用于将JSON编码为字符串的jQuery插件),但部分代码包含多个斜杠(在某种正则表达式中使用): 当我前面提到的脚本处理这一行时,其中一个反斜杠被删除,并导致: var escapeable = /["\\x00-\x1f\x7f-\x9f]/g, 此外,我还设置了一个简短的脚本,以确保问题不是由PHP脚本
var escapeable = /["\\x00-\x1f\x7f-\x9f]/g,
此外,我还设置了一个简短的脚本,以确保问题不是由PHP脚本处理javascript的方式引起的,而是PHP输出javascript的方式的问题:
<?php
$string = 'var escapeable = /["\\\x00-\x1f\x7f-\x9f]/g,';
echo($string); //this outputs: var escapeable = /["\\x00-\x1f\x7f-\x9f]/g,
?>
您可以使用(需要PHP 5.3.0):
$string=
<?php
$string = 'var escapeable = /["\\\x00-\x1f\x7f-\x9f]/g,';
echo($string); //this outputs: var escapeable = /["\\x00-\x1f\x7f-\x9f]/g,
?>
$string = <<<'EOD'
var escapeable = /["\\\x00-\x1f\x7f-\x9f]/g,
EOD;