javascript - 获取一个php变量到javascript

标签 javascript php

以下情况:

我有一个包含一些文本的 txt 文件。我通过“file_get_contents”用 PHP 读取它。 现在我想提交带有一些 ajax 请求的多个表单。 为此,我需要将变量放入 JS。

var results = "<?php echo htmlspecialchars($results); ?>";

不起作用。它返回“意外的 token 非法”

字符串本身只包含字符,可能还有一些特殊字符。 内容的一个例子是这样的:

Email: MyName@mail.net - Pass: ^s2p3r(s3cr3t& - City: aCity
Email: OtherName@mail.net - Pass: ^s2p3r(s3cr3t& - City: anotherCity

那为什么 JS 看不懂呢?

谢谢

编辑:

在 html 输出中它完全正确显示。 即使有所有特殊字符,如 ^ 、 ( 或 &

(我将上面的字符串编辑为完全可以给我该错误的内容)

最佳答案

$results 是一个 JSON 字符串吗?

如果是这样,你想用

解析它

htmlspecialchars(json_encode(json_decode($results,true)))

这样信息就可以首先解码成一个数组,然后编码为 Javascript 就绪的 JSON。

我看到的唯一问题是您似乎没有使用有效的 JSON,因为它没有在正确的引号中,因此根据您使用的 PHP 版本,它可能会也可能不会解析数据。理想的情况是您的数据看起来像

['Email' : 'MyName&mail.net', 'Pass' : 's2p3rs3cr3t', 'City' : 'aCity']

这将使您免于尝试使用正则表达式将信息解析为可读格式的麻烦,因为有时正则表达式可能会错误地替换/解析您可能需要的信息。我仍然相信使用 JSON 解码和编码数据应该可行。

关于javascript - 获取一个php变量到javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26735431/

相关文章:

javascript - mat-chip 的(单击)中的 ExpressionChangedAfterItHasBeenCheckedError

javascript - reslover 函数不适用于 Node.js 中的 Promise 对象

javascript - 如何使用php动态更改html链接的ID?

javascript - Safari 8 在使用 Canvas 时卡住

javascript - 不要让用户输入错误的数据 - 改进 IP 地址验证 JavaScript

javascript - 使用 Javascript 隐藏相对 div

javascript - 如何在连接到 API 的我的移动应用程序 (cordova) 上启用跨源资源共享(在 Yii 中)

java - 从 ajax 客户端调用时,如何通过身份验证确保 Web 服务的安全?

php - 有没有办法查询数组字段是否包含 Doctrine2 中的某个值?

php - PHP 中的按位运算符