我在别人的网站上工作,它有一个非常愚蠢的逻辑! 不管怎样,有一个 php 变量,它包含一个来自数据库的字符串。
$x = ' aaaa
bbb
ccc
gggg ';
我需要将此字符串提供给 javascript 函数:
<script>
var x = "<?php echo $x ; ?>";
some_function(x);
</script>
如你所知,我最终遇到了一个错误,因为一个 javascript 变量不能包含多行,除非像这样将它们连接在一起:
var x = ' i '+
' have '+
' different lines';
我该怎么做?它是否删除行或正确格式化都没有关系,我只是想摆脱这个错误。
最佳答案
将字符串传递给 json_encode正确地逃避它。如果您要输出到 HTML 文档,请确保传递 JSON_HEX_TAG
作为选项的一部分,转义 <
和 >
并防止恶意用户结束您的 </script>
尽早标记并引入 XSS 漏洞。
关于php - 将多行的 php 字符串传递给 javascript 函数/变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16660072/