我有这样的PHP变量
var externalData = '<?php echo $matches[0]; ?>';
我在加载页面的源代码时是这样的
var externalData = 'data,data,data,data,data
';
这会破坏javascript代码,并且浏览器无法运行它。
我想像这样:
var externalData = 'data,data,data,data,data';
php输出是文件的完整行,因此可能包含该行的结尾。我手动测试并工作,该如何解决呢?
您可以使用trim
(或rtrim
)删除字符串末尾的换行符:
var externalData = "<?php echo trim($matches[0]); ?>";
或者,您可以将整个字符串传递给json_encode
:
var externalData = <?php echo json_encode($matches[0]); ?>;
这不会删除换行符,但会对其进行编码,并且结果值将是有效的JS字符串文字(即,可能破坏代码的所有其他字符,例如'
或"
,也将转义)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句