Esempio n. 1
0
 private function getXmlElement(SimpleXMLElement $el)
 {
     $result = new XmlElement(String::create($el->getName()));
     $result->setText(String::create($el));
     foreach ($el->children() as $child) {
         $xmlChild = $this->getXmlElement($child);
         $xmlChild->setParent($result);
         $result->addChild($xmlChild);
     }
     foreach ($el->attributes() as $name => $val) {
         $result->addAttribute($name, (string) $val);
     }
     return $result;
 }
Esempio n. 2
0
 private function getXmlElement(DOMElement $el)
 {
     $result = new XmlElement(String::create($el->tagName));
     for ($i = 0; $i < $el->childNodes->length; $i++) {
         $child = $el->childNodes->item($i);
         if ($child instanceof DOMText) {
             $result->setText(String::create($child->textContent));
         } elseif ($child instanceof DOMElement) {
             $xmlChild = $this->getXmlElement($child);
             $xmlChild->setParent($result);
             $result->addChild($xmlChild);
         }
     }
     for ($i = 0; $i < $el->attributes->length; $i++) {
         $attr = $el->attributes->item($i);
         $result->addAttribute($attr->nodeName, $attr->nodeValue);
     }
     return $result;
 }