JSON viene ottimamente gestito da Zend Framework. Tramite l'helper apposito possiamo infatti trasformare un array associativo (generato ad esempio a partire da una query al database) e trasformarlo in un oggetto JSON restituito come output. Vediamo questa soluzione.
L'IndexController
non fa altro che usare come action la generazione del codice JSON:
class IndexController extends Zend_Controller_Action
{
public function init()
{
/* Inizializzazione */
}
public function indexAction()
{
$this->getHelper('ViewRenderer')->setNoRender(true);
$values = array('foo' => 'bar');
$this->getHelper('json')->sendJson($values);
}
}
Ricordiamo comunque che bisogna prestare attenzione agli array associativi complessi. Infatti se l'array viene generato dinamicamente, l'output risultante potrebbe essere quello di un array JSON contenente a sua volta degli oggetti. È importante in tal senso anche una verifica lato client della struttura JSON restituita.