从cakePHP控制器检索json数组

时间:2012-04-17 08:59:32

标签: jquery ajax cakephp controller

我想从cakePHP控制器返回一个JSON数组。我实际上有一个jquery click事件,它应该发送一个post,ajax或get调用控制器(用URL指定),该控制器应该只返回数组。这对我来说很有意义,因为我不会创建一个视图文件,我会将响应发送到控制器,我可以设置标头,回显json数组,然后可能退出。

我的输出只显示"数组"在控制台上,并不回显数组中的任何参数。有什么想法吗?

// jQuery code:
$("selector").click(function() {
      $.post("/controller/view/param1/param2/",function(data) {
         console.log(data);
      } 
}

// code in my controller:
public function view($param1 = false, $param2 = false) {
       $array = array("Name" => "John");
       header("Content-type: application/json");
       echo $array;
      exit;
}

编辑:找到解决方案 - echo $ array 必须 echo json_encode($ array)

1 个答案:

答案 0 :(得分:3)

public function view($param1 = false, $param2 = false) {
       $array = array("Name" => "John");
       header("Content-type: application/json"); // not necessary
       echo json_encode($array);
      exit;
}