在 PHP 中使用邮件函数时正确转义 JavaScript 文档代码中的特殊字符


Properly escaping special characters in JavaScript document code when using the mail function in PHP

在 PHP 中使用 mail -function 时,如何正确转义 JavaScript 文档代码中的特殊字符?

对于以下$script,我需要确保特殊字符如双引号 (")、单引号 (')、反斜杠 (') 和双正斜杠 (//) 被正确转义。

$script =   '<script>some javascript stuff...</script>';   

编辑:解决方案

我一直在寻找的功能是json_encode($script)

一种语言的代码在转义"特殊"字符时发出另一种语言的代码是出了名的困难。 当该代码超过数万个字符时,将其存储在另一个适合该语言的文件中更有意义。 在本例中,.js文件。

该文件可以作为该语言进行维护,而不仅仅是PHP中的文字字符串。 这为您提供了语法检查、调试、测试等内容。

如果最终结果(例如网页或其他显示的 HTML)可以简单地单独引用该文件,则将该文件托管在某个地方并发送对它的引用(例如 HTML 情况下的 script 标记)。 最终用户的系统将相应地下载文件。

如果最终结果需要直接嵌入这些内容,那么在PHP中,您将文件的内容读取到字符串中并发出该字符串。 像file_get_contents('yourScript.js').

将代码视为代码,而不是字符串文本。