2011-06-22 3 views
5

habituellement dans une action XHR J'utilise ce codedemande de réponse Zend/JSON utf-8

$this->_helper->layout->disableLayout(); 
$this->_helper->viewRenderer->setNoRender(true); 
$response = $this->getResponse(); 
$response->setHeader('Content-type', 'application/json', true); 
return $response->setBody(Zend_Json::encode($data)); 

Je me demande si besoin utf-8 encodage comme celui-ci

$response->setHeader('Content-type', 'application/json;charset=UTF-8', true); 

Répondre

12

Il serait bonne pratique pour le faire. Vous ne pouvez pas voir de problèmes si vous ne le faites pas. Cela dépend du type de données que vous envoyez.

il y a une façon de faire beaucoup plus court ce que vous faites (et mises en page fixe désactive les en-têtes à droite):

$this->_helper->json->sendJson($data); 
+0

dans view/helper Je ne vois que $ response = Zend_Controller_Front :: getInstance() -> getResponse(); $ response-> setHeader ('Content-Type', 'application/json', true); return $ data; donc ..... – Whisher

+0

btw merci pour la réponse :) – Whisher

+0

Il semble que 'sendJson' ne soit pas défini vous permet de définir un jeu de caractères spécifique (par exemple utf-8). – Till