将json从php发送到javascript

将json从php发送到javascript,php,javascript,json,Php,Javascript,Json,我有一个包含json的php变量,我使用json_encode将数组转换为json 如果我打印我的var,我有: ["L","M","M","J","V","S","D"] 但如果我在js中使用var,我有: ["L","M","M","J","V","S","D

我有一个包含json的php变量,我使用json_encode将数组转换为json

如果我打印我的var,我有:

["L","M","M","J","V","S","D"]
但如果我在js中使用var,我有:

["L","M","M","J","V","S","D"]
我无法解析,因为我有一个错误

Uncaught SyntaxError: Unexpected token & 
有没有办法在我的js中获取json

谢谢

编辑:

在php中

$dayArray = array('L','M','M','J','V','S','D');
$dayArray = json_encode($dayArray)
在js中


这可能是由于symfony呈现,我发现的唯一方法是使用json头执行ajax调用,以在PHP中输出json,输出传递PHP结构的结果

文档中的示例:

<?php
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);

echo json_encode($arr);
?>
执行此操作时,浏览器将看到如下内容:

setDayArray(["L","M","M","J","V","S","D"]);   // Right
而不是

setDayArray('["L","M","M","J","V","S","D"]'); // Wrong
我找到了解决办法

calendar.setDayArray({{ dayArray | raw }});

使用raw来允许html

为什么要使用htmlspecialchars/htmlspecialchars?演示如何在JavaScript中使用var。@巴德沃尔夫:这是一个非常糟糕的主意。是的,不要使用
htmlentities
。不,不要直接输出。我用代码
setDayArray(“”)
编辑我的文章。这就是你的问题所在,你必须
echo
out。我也有同样的问题setDayArray([“L”、“M”、“M”、“J”、“V”、“s”、“D”);
$dayArray = json_encode($dayArray)
setDayArray('<?php $dayArray ?>'); // Wrong
$dayArray = json_encode($dayArray)
setDayArray(<?php echo $dayArray ?>);   // Right
setDayArray(["L","M","M","J","V","S","D"]);   // Right
setDayArray('["L","M","M","J","V","S","D"]'); // Wrong
calendar.setDayArray({{ dayArray | raw }});