public function getXMLElementAround($innerXML = '') { return XMLBuild::wrapTag($this->name_, $this->attributes_, $innerXML); }
<?php /* * This file is part of the XMLReaderIterator package. * * Copyright (C) 2012, 2013 hakre <http://hakre.wordpress.com> * * Example: Iterate over all elements */ require 'xmlreader-iterators.php'; // require XMLReaderIterator library $xmlFile = 'data/movies.xml'; $reader = new XMLReader(); $reader->open($xmlFile); /** @var XMLElementIterator|XMLReaderNode[] $it */ $it = new XMLElementIterator($reader); foreach ($it as $index => $element) { printf("#%02d: %s\n", $index, XMLBuild::readerNode($reader)); }
/** * @param XMLReader $reader * * @return string */ public static function readerNode(XMLReader $reader) { switch ($reader->nodeType) { case XMLREADER::NONE: return '%(0)%'; case XMLReader::ELEMENT: return XMLBuild::startTag($reader->name, new XMLAttributeIterator($reader)); default: $node = new XMLReaderNode($reader); $nodeTypeName = $node->getNodeTypeName(); $nodeType = $reader->nodeType; return sprintf('%%%s (%d)%%', $nodeTypeName, $nodeType); } }