zend php多个数组json_encoding

时间:2012-07-21 23:17:13

标签: php javascript json zend-framework

我在zend和js中遇到了json功能问题。

我尝试对包含一些模型的单个数组进行编码,如下所示:

echo json_encode(Application_Model_Marker::getMarkers());

var mark = JSON.parse(jsonVal); //in js

其中getMarkers是一个返回标记模型数组的静态方法。

这很好用,当我在js脚本中解析它并尝试访问json对象的值时,它工作正常。

但是,如果我尝试创建并发送这样的数组数组:

$allData = array();
$allData['info'] = Application_Model_Marker::getMarkers();
$allData['openingHours'] = Application_Model_Openinghours::getOpeningHours();
$allData['happyHours'] = Application_Model_Happyhour::getHappyHours();

echo json_encode($allData);

当我尝试提醒时,它仍会发送所有正确的信息(jsonVal.responseText);在js。

它有三个数组,每个数组都包含一些对象数组。

然而,当我尝试将变量初始化为解析的json对象时,就像在第一个示例中一样,我无法访问这些值,并且当我尝试它时,程序停止时会出现某种错误。

当我只是尝试从编码的json对象中打印响应文本时,我没有得到它,因为它具有所有正确的信息。

任何想法如何进行多维json编码?

1 个答案:

答案 0 :(得分:0)

试试这个,希望它能起作用:

<sctript>
var mark;
eval("mark = "+jsonVal+";");
</sctrip>