2012-03-19 89 views
0

當我嘗試從fetchAll返回json時,我注意到一個錯誤。json編碼數組返回空的json對象,如何?

控制器

我有一個fetchAction

$result = $model->fetchAll(); 
echo Zend_Json::encode($result); 
exit(); 

在.js文件中我有一個Ajax調用:

$.ajax({ 
    type: "GET", 
    url: "/module/index/fetch", 
    dataType: "json", 
    processData: false, 
    success: function(data) { 
     console.log(data); 
     $.each(data, function(index, obj){ 
      // console.log(obj); 
     }); 
    } 
}); 

,如果我做一個print_r($result);我得到:

Array 
(
    [0] => Module_Model_Module Object 
     (
      [_message:protected] => test 
      [_created:protected] => 1332188757 
      [_dependent_table:protected] => 
     ) 

    [1] => Module_Model_Module Object 
     (
      [_message:protected] => 123123 
      [_created:protected] => 1332194812 
      [_dependent_table:protected] => 
     ) 

) 

,但console.log(data);返回2個空json對象:[{},{}]

任何想法,爲什麼我得到的json空回來?

回答

0

我的猜測是,Zend_Json不能改造Module_Model_Module對象成陣列,然後到JSON,你可以嘗試指定者打電話的對象,看看是否再Zend_Json能正確編碼他們