4

CakePHP コントローラーから JSON 配列を返したい。私は事実上、投稿、ajax、またはコントローラーへの呼び出しのいずれかを送信する必要があるjqueryクリックイベント(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)でなければなりません

4

1 に答える 1

4
public function view($param1 = false, $param2 = false) {
       $array = array("Name" => "John");
       header("Content-type: application/json"); // not necessary
       echo json_encode($array);
      exit;
}
于 2012-04-17T09:03:13.990 に答える