XmlWrapper
class XmlWrapper implements DataQueryObject, ArrayAccess
Wrapper für XML-Nodes.
Wrapper-Klasse um mit XML-Nodes und DataQuerys arbeiten zu können.
$nl = new \Alvine\Xml\NodeList();
$e1 = new \Alvine\Xml\Element('stadt','Amsterdamm');
$e2 = new \Alvine\Xml\Element('land','Argentinien');
$e3 = new \Alvine\Xml\Element('fluss','Amazonas');
$nl->appendNode($e1);
$nl->appendNode($e2);
$w = new XMLWrapper($nl);
$w->unique();
Properties
protected Document | $nodeList |
Methods
Existiert das Element in der Liste? Es wird hier auf identisch geprüft.
Array auf erstes Element setzen
Implementierung des Iteration Interfaces.
Implementierung des Iteration Interfaces.
Implementierung des Iteration Interfaces.
Implementierung des Iteration Interfaces.
Implementierung des Iteration Interfaces.
Implementierung des Iteration Interfaces.
Implementierung des ArrayAccess Interfaces.
Implementierung des ArrayAccess Interfaces.
Implementierung des ArrayAccess Interfaces.
Anzahl der Datensätze zurückgeben
Daten zurücksetzen / löschen
Implementierung des ArrayAccess Interfaces.
Implementierung des ArrayAccess Interfaces.
Implementierung des ArrayAccess Interfaces.
Entfernen aller doppelten Zeilen.
XML zurückgeben
Details
at line 59
__construct(NodeList $nodelist)
Erstellt neues XMLWrapper-Objekt
at line 74
boolean
existsValue($element)
Existiert das Element in der Liste? Es wird hier auf identisch geprüft.
at line 85
rewind()
Array auf erstes Element setzen
at line 94
getCurrent()
Implementierung des Iteration Interfaces.
at line 103
getCurrentKey()
Implementierung des Iteration Interfaces.
at line 112
getNext()
Implementierung des Iteration Interfaces.
at line 121
isValid()
Implementierung des Iteration Interfaces.
at line 132
append(Element $element)
Neues Element anhängen
at line 143
Element
current()
Implementierung des Iteration Interfaces.
at line 152
string
key()
Implementierung des Iteration Interfaces.
at line 161
Element
next()
Implementierung des Iteration Interfaces.
at line 170
boolean
valid()
Implementierung des Iteration Interfaces.
at line 184
setValueAt(mixed $index, Element $element)
Implementierung des ArrayAccess Interfaces.
Value bezieht sich hier nicht auf den Inhalt des Elements, sondern auf das Element selber.
at line 197
existsIndex(mixed $index)
Implementierung des ArrayAccess Interfaces.
Value bezieht sich hier nicht auf den Inhalt des Elements, sondern auf das Element selber.
at line 209
removeIndex(mixed $index)
Implementierung des ArrayAccess Interfaces.
at line 222
getValueAt(mixed $index)
Implementierung des ArrayAccess Interfaces.
at line 232
getCount()
Anzahl der Datensätze zurückgeben
at line 241
truncate()
Daten zurücksetzen / löschen
at line 277
orderBy(Closure $callback)
Sortierfunktion ``` // Sortieren einer NodeList $nl = new \Alvine\Xml\NodeList(); $nl->appendNode(new \Alvine\Xml\Element('x')); $nl->appendNode(new \Alvine\Xml\Element('a')); $nl->appendNode(new \Alvine\Xml\Element('b'));
echo $nl[0]->getTag(); // x echo $nl[1]->getTag(); // a echo $nl[2]->getTag(); // b
$w = new XMLWrapper($nl); $w->orderBy(function($obj1,$obj2) { if($obj1->getTag()==$obj2->getTag()) return 0; return $obj1->getTag()>$obj2->getTag()?1:-1; });
// Zielsortierung echo $nl[0]->getTag(); // a echo $nl[1]->getTag(); // b echo $nl[2]->getTag(); // x ```
at line 292
offsetSet(integer $offset, mixed $value)
Implementierung des ArrayAccess Interfaces.
at line 303
boolean
offsetExists(integer $offset)
Implementierung des ArrayAccess Interfaces.
at line 315
offsetUnset(integer $offset)
Implementierung des ArrayAccess Interfaces.
unset($dataquery[1]);
at line 327
Node
offsetGet(integer $offset)
Implementierung des ArrayAccess Interfaces.
at line 371
unique()
Entfernen aller doppelten Zeilen.
$nl = new \Alvine\Xml\NodeList();
$e1 = new \Alvine\Xml\Element('stadt','Amsterdamm');
$e2 = new \Alvine\Xml\Element('land','Argentinien');
$e3 = new \Alvine\Xml\Element('fluss','Amazonas');
$nl->appendNode($e1);
$nl->appendNode($e2);
$nl->appendNode($e2);
$nl->appendNode($e3);
$nl->appendNode($e1);
$nl->appendNode($e3);
$nl->appendNode($e2);
$nl->appendNode($e2);
$nl->appendNode($e2);
$nl->appendNode($e1);
echo $nl->getXML(); // Ergibt folgenden XML-String
// <stadt>Amsterdamm</stadt>
// <land>Argentinien</land>
// <land>Argentinien</land>
// <fluss>Amazonas</fluss>
// <stadt>Amsterdamm</stadt>
// <fluss>Amazonas</fluss>
// <land>Argentinien</land>
// <land>Argentinien</land>
// <land>Argentinien</land>
// <stadt>Amsterdamm</stadt>
$w->unique();
$this->assertCount(3, $nl);
echo $nl->getXML();
// Ergebnis
// <stadt>Amsterdamm</stadt>
// <land>Argentinien</land>
// <fluss>Amazonas</fluss>"
at line 389
string
getXML()
XML zurückgeben