コード例 #1
0
 private function serializeElem(DOMDocument $doc_xml, DOMElement $parent_xml, $id, MenuElem $menu_elem)
 {
     $menu_elem_xml = $doc_xml->createElement('menu-elem');
     $menu_elem_xml->setAttribute('id', $id);
     $label_xml = $doc_xml->createElement('label', $menu_elem->getLabel());
     $url_xml = $doc_xml->createElement('url', $menu_elem->getUrl());
     $menu_elem_xml->appendChild($label_xml);
     $menu_elem_xml->appendChild($url_xml);
     $menu_children = $menu_elem->getChildren();
     if ($menu_children) {
         $submenu_xml = $doc_xml->createElement('submenu');
         $menu_elem_xml->appendChild($submenu_xml);
         foreach ($menu_children as $child_id => $child_elem) {
             $this->serializeElem($doc_xml, $submenu_xml, $child_id, $child_elem);
         }
     }
     $parent_xml->appendChild($menu_elem_xml);
 }