Поскольку вы используете Zend Framework, я рекомендую вам использовать Zend_Json . Zend_Json - довольно полезный компонент, используемый для форматирования Json
из любого поддерживаемого формата (объект, массив, xml ...).
Zend_Json::decode()
и Zend_Json::encode()
позволят вам кодировать и декодировать Json, а prettyPrint()
используется, чтобы сделать ваш вывод более красивым.
Edit:
Как сказал Свиш, ваши два примера не похожи друг на друга, поэтому трудно угадать, что вы хотите поместить в свое дерево.
Вам нужно создать свой собственный массив , чтобы он выглядел так, как вы хотите.
Например, допустим, вы хотите, чтобы в вашей базе данных была только одна строка из вашей базы данных, тогда ваш массив будет выглядеть примерно так:
$v = array(
array(
"data" => array("icon" => "ICON",
"title" => $row->name),
"attr" => array("rel" => "REL",
"title" => "TITLE",
"id" => $row->group_id),
"state" => "closed"));
echo Zend_Json::encode($v);
Эти строки должны повторять что-то похожее на ваши примеры.
Чтобы заставить его работать с вашим fetchAll()
, простой foreach сделает это.