如何使用Symfony 1.4返回JSON响应

JSON是一种轻型格式, 用于在应用程序之间进行数据交换, 已广泛用于以任何语言(例如PHP, Ruby等)编写的每种类型的Web应用程序。要从旧版Symfony 1.4中的操作返回JSON响应, 你首先需要更改响应的内容类型, 否则最终将返回一个字符串, 该字符串不带有你要发送的格式的特定标头。 JSON的正确内容类型是application / json。最后返回symfony操作的$ this-> renderText方法的结果, 该方法期望将JSON编码的字符串作为第一个参数(使用json_encode):

< ?php/** * An actions.class.php file from any of the modules of your application. * */class mymoduleActions extends sfActions {/*** Actualiza el estado de un módulo via AJAX.* * @param sfWebRequest $request* @return type*/public function executeMyActionWithJsonResponse(sfWebRequest $request){// Your action logic// Set the response format to json$this-> getResponse()-> setHttpHeader('Content-type', 'application/json'); // Use renderText to return a json encoded array !return $this-> renderText(json_encode(array("foo" => "bar"))); } }

MyActionWithJsonResponse操作的响应将是一个JSON字符串, 即:
{"foo":"bar"}

【如何使用Symfony 1.4返回JSON响应】编码愉快!

    推荐阅读