Вывести данные в json-массиве

mstdmstd

Новичок
Вывести данные в json-массиве

Всем привет
Вот есть такая Tree Animation библиотека с примером http://thejit.org/static/v20/Jit/Examples/RGraph/example1.html

В примете данные задаются в массиве вида :

Я пытаюсь в пхп построить массив и вывести его json_encode( Делаю в пхп скрипте:
PHP:
       $Person1= array( 'id'=>190, 'name'=>'Pearl Jam', 'parent_id'=>0, 'data'=>array('relation'=>'<b>Pearl Jam text</b>...<br>Some More text...'), 'children'=>array() );
      $Person2= array( 'id'=>842, 'name'=>'Cypress Hill', 'parent_id'=>190, 'data'=>array('relation'=>'<h4>Pearl Jam &amp; Cypress Hill</h4><b>Connections:</b><ul><li>Pearl Jam <div>(relation: collaboration)</div></li><li>Cypress Hill <div>(relation: collaboration)</div></li></ul>'), 'children'=>array() );
      $Person3= array( 'id'=>1078773, 'name'=>'Neil Young &amp; Pearl Jam', 'parent_id'=>190, 'data'=>array('relation'=>'<h4>Neil Young &amp; Pearl Jam</h4><b>Connections:</b><ul><li>Pearl Jam <div>(relation: collaboration)</div></li><li>Neil Young <div>(relation: collaboration)</div></li></ul>'), 'children'=>array() ) ;
      
      $Person4= array( 'id'=>9644, 'name'=>'Neil Young', 'parent_id'=>1078773, 'data'=>array('relation'=>'<h4>Neil Young</h4><b>Connections:</b><ul><li>Neil Young &amp; Pearl Jam <div>(relation: collaboration)</div></li></ul>'), 'children'=>array() );
    
      $Person3['children'][]= $Person4;
      $Person1['children'][]= $Person2;
      $Person1['children'][]= $Person3;
      $this->PeopleArray= array( 
        $Person1
      );
      echo json_encode(   array ( 'ErrorMessage'=>'', 'ErrorCode'=>0, 'PeopleArray'=> $this->PeopleArray )   );
На клиенте обрабатываю

PHP:
     json = data.PeopleArray
В результате ввыводится график по без "детей" и непонятно почему - вроде массив правильно составил
Если вывести на экран то что возвращает пхп метод то :
PHP:
 {"ErrorMessage":"","ErrorCode":0,"PeopleArray":[{"id":190,"name":"Pearl Jam","parent_id":0,"data":{"relation":"Pearl Jam text<\/b>...
Some More text..."},"children":[{"id":842,"name":"Cypress Hill","parent_id":190,"data":{"relation":"
Pearl Jam & Cypress Hill<\/h4>Connections:<\/b>
Pearl Jam 
(relation: collaboration)<\/div><\/li>
Cypress Hill 
(relation: collaboration)<\/div><\/li><\/ul>"},"children":[]},{"id":1078773,"name":"Neil Young & Pearl Jam","parent_id":190,"data":{"relation":"
Neil Young & Pearl Jam<\/h4>Connections:<\/b>
Pearl Jam 
(relation: collaboration)<\/div><\/li>
Neil Young 
(relation: collaboration)<\/div><\/li><\/ul>"},"children":[{"id":9644,"name":"Neil Young","parent_id":1078773,"data":{"relation":"
Neil Young<\/h4>Connections:<\/b>
Neil Young & Pearl Jam 
(relation: collaboration)<\/div><\/li><\/ul>"},"children":[]}]}]}]}
В чем проблема ?
 

AmdY

Пью пиво
Команда форума
сформируй точно такой же массив как в примере, сравни его json_encode c тем, что в примере, проверь работает ли. скорее всего ошибка где-то в js.

p.s. Работал в компании, которая делала проект с таким отображением, всё работало до первых тестов, когда элементов стало под сотню начались дикие тормоза (тогда ещё линии не на канвасе рисовались, а однопиксельными дивами). у меня складывается впечатление, что и на канвасе всё притормаживает, смотрите, как бы не получился мёртвый проект, как у нас.
 

Farsh

~ on ~ high ~ wave ~
1) http://www.jsonlint.com/
2) header('Content-type: text/plain; charset: utf-8'); + firebug, который отчетливо покажет, что пришло
 

mstdmstd

Новичок
Спасибо за подсказки - сравнивая тексты я нашел проблему
там надо было еще индекс в массиве указать :
PeopleArray = data.PeopleArray[0]

-~{}~ 25.07.10 10:26:

Автор оригинала: AmdY
p.s. Работал в компании, которая делала проект с таким отображением, всё работало до первых тестов, когда элементов стало под сотню начались дикие тормоза (тогда ещё линии не на канвасе рисовались, а однопиксельными дивами). у меня складывается впечатление, что и на канвасе всё притормаживает, смотрите, как бы не получился мёртвый проект, как у нас.
Да если много данных начинает неслабо тормозить ...
А не подскажите какую-нить схожую технологию но менее тормознутую?
Мне кажется они все тормозят при приличных обьемах данных...
Я когда-то учавствовал в проекте на Flex с отображением людей в древовидной иерархии - так там тормоза начинались намного раньше
100 человек - по-поему Flex еще тормознутей
 
Сверху