XML-Namespaces mit SimpleXML in PHP
Beim Arbeiten mit XML-Dokumenten, die benutzerdefinierte Namespaces in PHP enthalten, erkennt SimpleXML möglicherweise keine Elemente, die diese Namespaces verwenden Standard. Um effektiv auf diese Elemente zuzugreifen, können Sie alternative Methoden verwenden.
Verwendung von Children() mit optionalem Namespace-Präfix:
Ein Ansatz besteht darin, die Methode Children() mit zu verwenden ein optionales Namespace-Präfixargument, das auf „true“ gesetzt ist. Dadurch können Sie auf benutzerdefinierte Namespace-Elemente zugreifen.
<code class="php">$rss = simplexml_load_string( '<?xml version="1.0" encoding="utf-8"?> <rss version="2.0" xmlns:moshtix="http://www.moshtix.com.au"> <channel> <link>qweqwe</link> <moshtix:genre>asdasd</moshtix:genre> </channel> </rss>' ); foreach ($rss->channel as $channel) { echo 'link: ' . $channel->link . "\n"; echo 'genre: ' . $channel->children('moshtix', true)->genre . "\n"; }</code>
Dieser Ansatz gibt die Link- und Genre-Elemente erfolgreich aus und bietet Zugriff auf Elemente innerhalb des benutzerdefinierten Moshtix-Namespace.
Das obige ist der detaillierte Inhalt vonWie greife ich mit SimpleXML in PHP auf XML-Elemente in benutzerdefinierten Namespaces zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!