php - php 变量中的斜杠在 javascript 中未正确解析

标签 php javascript json

Possible Duplicate:
JSON: why are forward slashes escaped?

我正在传递包含 "//" 的值从 PHP 到 Javascript。然而,这些值继续解析 "//"如:"\/\/"当我使用 json 解码时,无论我如何尝试封闭或转义字符串......

这是我正在使用的代码:

PHP

foreach($varr as $vr)
{
    array_push($legendarr, "%%.%% - ".$vr);                        
    array_push($linkarr, "http://".$_SERVER['HTTP_HOST']."/getdata.php?criteria=".$vr);
}

JavaScript:

pie = r.piechart(320, 240, 100, <?php echo json_encode($vcr); ?>, { legend: <?php echo json_encode($legendarr); ?>, legendpos: "west", href: <?php echo json_encode($linkarr); ?>});

问题在于变量linkarr显示形式为:

http:\/\/localhost:8090\/getdata.php?criteria=......

谁知道为什么会发生这种情况?我该如何修复它?

谢谢。

最佳答案

字符串 "http:\/\/www.example.org" 在 JavaScript 中仍将打印为 "http://www.example.org" .

我相信转义斜杠是 JSON 标准的一部分。但它不应该以任何方式影响您的 JS 代码。

顺便说一句,mysql_escape_string('//')完全脱离了上下文; HTML != 数据库。

关于php - php 变量中的斜杠在 javascript 中未正确解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11944893/

相关文章:

php - ACF 错误信息

php - Jquery Ajax 无法与 Laravel 分页正常工作

javascript - 检测何时禁用样式

javascript - Sharepoint Teamsite-calendar-webpart - 将约会保存到 Outlook

javascript - 在纯 JavaScript 中打包/解包通用二进制 JSON

javascript - 如何使用 Node js将json输出插入mysql

php - 无法在 Yii2 swift 邮件程序中打开文件进行阅读

javascript - 在 dotcloud 上托管 nodejs 服务器

JavaScript JSON 比较

php - MySQL + PHP - 根据先前的选择结果选择信息