我在将多维和关联数组从php传递给Javascript时遇到了麻烦。我用JSON转换它,使用:
_SESSION = '<?php print json_encode($_SESSION) ?>';
我也试过
_SESSION = '<?php print json_encode($_SESSION, JSON_PRETTY_PRINT) ?>';
_SESSION = $.parseJSON('<?php print json_encode($_SESSION) ?>');
它们都给我一些错误:Uncaught SyntaxError:Unexpected token ILLEGAL。
但是,第一个没有给我任何错误,我可以在Javascript中访问它。然后输出:
{"items":{"221163":{"CodeComplete":null,"Project":"Coding","Team":"Mail","TimeSpent":25","Children":[]}}, {"221165":{CodeComplete":null,"Project":"Coding","Team":"Batman","TimeSpent":"40","Children":[]}}
我相信这就像一个字符串,因为_SESSION [0]输出“{”。但是,我希望它是一个数组或一个对象。数组在php中看起来像这样:
_SESSION( "items" => array(
221163 =>
array( CodeComplete => null
Project => "Coding"
Team => "Mail"
Timespent => "25"
Children => array(
)
)
221165 =>
array( CodeComplete => null
Project => "Coding"
Team => "Stones"
Timespent => "40"
Children => array(
)
)
)
)
我希望能够以与我在php(不是litterary ofcorse)相同的方式访问此数组,但_SESSION["items"]
或_SESSION.items
未定义,因为_SESSION
是一个字符串。 ..
我做错了什么想法?
答案 0 :(得分:0)
正如@ CD001在他的评论中所建议的那样,我删除了&#39;&#39;从转移到成为
_SESSION = <?php print json_encode($_SESSION) ?>;
相反,现在一切正常,谢谢!