XmlWrapper
in package
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();
Tags
Table of Contents
Interfaces
- DataQueryObject
- Interface für Datenzugriff
- ArrayAccess
Properties
Methods
- __construct() : mixed
- Erstellt neues XMLWrapper-Objekt
- append() : XmlWrapper
- Neues Element anhängen
- current() : Element
- Implementierung des Iteration Interfaces.
- existsIndex() : boolean
- Implementierung des ArrayAccess Interfaces.
- existsValue() : boolean
- Existiert das Element in der Liste? Es wird hier auf identisch geprüft.
- getCount() : integer
- Anzahl der Datensätze zurückgeben
- getCurrent() : Element
- Implementierung des Iteration Interfaces.
- getCurrentKey() : string
- Implementierung des Iteration Interfaces.
- getNext() : Element
- Implementierung des Iteration Interfaces.
- getValueAt() : mixed
- Implementierung des ArrayAccess Interfaces.
- getXML() : string
- XML zurückgeben
- isValid() : boolean
- Implementierung des Iteration Interfaces.
- key() : string
- Implementierung des Iteration Interfaces.
- next() : Element
- Implementierung des Iteration Interfaces.
- offsetExists() : boolean
- Implementierung des ArrayAccess Interfaces.
- offsetGet() : Node
- Implementierung des ArrayAccess Interfaces.
- offsetSet() : void
- Implementierung des ArrayAccess Interfaces.
- offsetUnset() : void
- Implementierung des ArrayAccess Interfaces.
- orderBy() : TextWrapper
- 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'));
- removeIndex() : TextWrapper
- Implementierung des ArrayAccess Interfaces.
- rewind() : void
- Array auf erstes Element setzen
- setValueAt() : TextWrapper
- Implementierung des ArrayAccess Interfaces.
- truncate() : TextWrapper
- Daten zurücksetzen / löschen
- unique() : XmlWrapper
- Entfernen aller doppelten Zeilen.
- valid() : boolean
- Implementierung des Iteration Interfaces.
Properties
$nodeList
protected
Document
$nodeList
= null
Daten
Methods
__construct()
Erstellt neues XMLWrapper-Objekt
public
__construct(NodeList $nodelist) : mixed
Parameters
- $nodelist : NodeList
append()
Neues Element anhängen
public
append(mixed $element) : XmlWrapper
Parameters
- $element : mixed
Return values
XmlWrapper —Dieses Objekt
current()
Implementierung des Iteration Interfaces.
public
current() : Element
Return values
Element —Aktueller Wert
existsIndex()
Implementierung des ArrayAccess Interfaces.
public
existsIndex(simple $index) : boolean
Value bezieht sich hier nicht auf den Inhalt des Elements, sondern auf das Element selber.
Parameters
- $index : simple
-
Index im Array
Return values
boolean —true oder false
existsValue()
Existiert das Element in der Liste? Es wird hier auf identisch geprüft.
public
existsValue(mixed $element) : boolean
Parameters
- $element : mixed
Return values
boolean —true oder false
getCount()
Anzahl der Datensätze zurückgeben
public
getCount() : integer
Return values
integer —Anzahl der Datensätze
getCurrent()
Implementierung des Iteration Interfaces.
public
getCurrent() : Element
Return values
Element —aktuelles Objekt
getCurrentKey()
Implementierung des Iteration Interfaces.
public
getCurrentKey() : string
Return values
string —Keys
getNext()
Implementierung des Iteration Interfaces.
public
getNext() : Element
Return values
Element —nächster Eintrag
getValueAt()
Implementierung des ArrayAccess Interfaces.
public
getValueAt(mixed $index) : mixed
Parameters
- $index : mixed
-
Zeilennummer
Return values
mixed —Wert
getXML()
XML zurückgeben
public
getXML() : string
Return values
string —XML
isValid()
Implementierung des Iteration Interfaces.
public
isValid() : boolean
Return values
boolean —Status der Iteration
key()
Implementierung des Iteration Interfaces.
public
key() : string
Return values
string —Aktueller Schlüssel
next()
Implementierung des Iteration Interfaces.
public
next() : Element
Return values
Element —Nächstes Objekt
offsetExists()
Implementierung des ArrayAccess Interfaces.
public
offsetExists(integer $offset) : boolean
Parameters
- $offset : integer
-
Index
Return values
boolean —true/false
offsetGet()
Implementierung des ArrayAccess Interfaces.
public
offsetGet(integer $offset) : Node
Parameters
- $offset : integer
-
Index
Return values
Node —Node
offsetSet()
Implementierung des ArrayAccess Interfaces.
public
offsetSet(integer $offset, mixed $value) : void
Parameters
- $offset : integer
-
Index
- $value : mixed
-
Node
offsetUnset()
Implementierung des ArrayAccess Interfaces.
public
offsetUnset(integer $offset) : void
unset($dataquery[1]);
Parameters
- $offset : integer
-
Index
orderBy()
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'));
public
orderBy(Closure $callback) : TextWrapper
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
Parameters
- $callback : Closure
-
Sortierung
Tags
Return values
TextWrapper —Dieses Objekt
removeIndex()
Implementierung des ArrayAccess Interfaces.
public
removeIndex(mixed $index) : TextWrapper
Parameters
- $index : mixed
-
Schlüssel
Return values
TextWrapper —Dieses Objekt
rewind()
Array auf erstes Element setzen
public
rewind() : void
setValueAt()
Implementierung des ArrayAccess Interfaces.
public
setValueAt(simple $index, Element $element) : TextWrapper
Value bezieht sich hier nicht auf den Inhalt des Elements, sondern auf das Element selber.
Parameters
- $index : simple
-
Index
- $element : Element
-
Wert
Return values
TextWrapper —Dieses Objekt
truncate()
Daten zurücksetzen / löschen
public
truncate() : TextWrapper
Return values
TextWrapper —Dieses Objekt
unique()
Entfernen aller doppelten Zeilen.
public
unique() : XmlWrapper
$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>"
Return values
XmlWrapper —Dieses Objekt
valid()
Implementierung des Iteration Interfaces.
public
valid() : boolean
Return values
boolean —Status der Iteration