Per XPath suche ich mir eine Nodelist zusammen:
$felderNodeList = $xpath->query('//*[@feld="true"]');
NodeList in Array umspeichern (http://php.net/manual/de/class.domnodelist.php; suchen nach 'use an array'):
foreach ($felderNodeList as $node) {
$felder[] = $node;
}
Die einzelnen Arrayelemente von $felder sind objects (echo gettype($felder[1]);)
Nun liefern folgende Abfragen die selben Ergebnisse:
if (in_array($node->nodeName, $felder)) {
und
foreach($felder as $feld) {
if($node->isSameNode($feld)) {
Hätte gedacht, nur das zweite Beispiel ist korrekt. Beim ersten schaut man doch nach, ob ein String in einem Array mit Objekten ist ... ? Warum wird auch beim ersten Beispiel das richtige gefunden?
Paul