| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
vision 01.01.2006 12:17
Уже три дня мучаюсьникак то что надо не выходит.<data>
<level1 id="level1">
<level2 id="level2" parent="level1"/>
<level2 id="level2" parent="level1">
<level3 id="level3" parent="level2">
<level4 id="level4" parent="level3"/>
</level3>
<level3 id="level3" parent="level2"/>
</level2>
</level1>
</data>Вот что смог придумать, сам понимаю что чушь но как сделать правильнее не пойму: @xml[]
$xml_file[^xdoc::load[/data.xml]]
^get_tree[^xml_file.selectSingle[data]]
@get_tree[tree]
$tree_list[$tree.childNodes]
^for[i](0;$tree_list-1){
$tree_node[$tree_list.$i]
^if($tree_node.nodeType==1){+ $tree_node.nodeName / $tree_node.nodeType<br />}
^if(^tree_node.hasChildNodes[]){^get_child[$tree_node]}
}
@get_child[node]
$node_list[$node.childNodes]
^for[a](0;$node_list-1){
$this_node[$node_list.$a]
^if($this_node.nodeType==1){++ $this_node.nodeName / $this_node.nodeType<br> }
^if(^this_node.hasChildNodes[]){+^get_child[$this_node]}
}В результате получаем: