PHP输出破坏了Javascript

用户名

我有这样的PHP变量

var externalData = '<?php echo $matches[0]; ?>';

我在加载页面的源代码时是这样的

var externalData = 'data,data,data,data,data
';

这会破坏javascript代码,并且浏览器无法运行它。

我想像这样:

var externalData = 'data,data,data,data,data';

php输出是文件的完整行,因此可能包含该行的结尾。我手动测试并工作,该如何解决呢?

费利克斯·克林(Felix Kling)

您可以使用trim(或rtrim)删除字符串末尾的换行符:

var externalData = "<?php echo trim($matches[0]); ?>";

或者,您可以将整个字符串传递给json_encode

var externalData = <?php echo json_encode($matches[0]); ?>;

这不会删除换行符,但会对其进行编码,并且结果值将是有效的JS字符串文字(即,可能破坏代码的所有其他字符,例如'",也将转义)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PHP破坏了我的代码

来自分类Dev

javascript append()函数破坏了滑块

来自分类Dev

JavaScript破坏了其他脚本

来自分类Dev

javascript append()函数破坏了滑块

来自分类Dev

journalctl json 输出破坏了 python 的 json 解析器

来自分类Dev

Visual Studio 优化破坏了 SDL 图形输出

来自分类Dev

EJS / Javascript:回车和换行符破坏了Javascript

来自分类Dev

Chrome 35破坏了PHP get_browser

来自分类Dev

Chrome 35破坏了PHP get_browser

来自分类Dev

为什么php的echo破坏了我的脚本?

来自分类Dev

HTACCESS 破坏了 PHP 代码和 Xampp 服务器

来自分类Dev

文件编码似乎破坏了编辑过的 PHP 文件

来自分类Dev

Foreach 循环似乎破坏了 Laravel/PHP 7 中的数组

来自分类Dev

Google地方信息照片getUrl()破坏了我的JavaScript

来自分类Dev

此JavaScript是否破坏了控制台?

来自分类Dev

IE9标准文档模式破坏了JavaScript

来自分类Dev

PageTabViewStyle破坏了NavigationView

来自分类Dev

嵌套的SplitContainers破坏了SplitterWidth

来自分类Dev

我破坏了封装吗?

来自分类Dev

.htaccess破坏了我的网站

来自分类Dev

InstallShield破坏了TFS构建

来自分类Dev

wget破坏了内容的配置

来自分类Dev

Serilog破坏了多个日志?

来自分类Dev

我已经破坏了Ubuntu!

来自分类Dev

添加ManytoManyField破坏了Django

来自分类Dev

导航被display:inline破坏了

来自分类Dev

Tkinter破坏了Toplevel的根源

来自分类Dev

icacls破坏了胜利10

来自分类Dev

Firebase模块破坏了Aurelia