ホームページ >バックエンド開発 >PHPチュートリアル >SimpleXML を使用して名前空間付き XML ノードにアクセスするにはどうすればよいですか?
Simple XML による XML 名前空間の障害の克服
Simple XML を使用して XML データを解析すると、先頭に名前空間が付加されたノードが発生し、アクセスできなくなる場合があります。従来の方法で。これは、名前空間を広範囲に利用する Flickr の RSS などのフィードを扱う場合に特にイライラする可能性があります。
解決策: 名前空間の活用
幸いなことに、名前空間ノードへのアクセスを簡素化するソリューションがあります。 : Children() メソッド。名前空間を引数として指定できるため、XML 構造を効果的にトラバースできます。
たとえば、Simple XML を使用して Flickr フィードからサムネイル要素を取得するには、次のようにします。
$feed = simplexml_load_file('http://www.flickr.com/photos/username/rss/'); foreach ($feed->item as $item) { $ns_media = $item->children('http://search.yahoo.com/mrss/'); echo $ns_media->thumbnail->url; }
このコードはフィードをロードし、そのアイテムを反復処理し、名前空間を認識する Children() メソッドを使用してサムネイル URL にアクセスします。適切な名前空間を指定することで、XML 階層を簡単に移動できます。
したがって、解決策は、関連する名前空間を持つ Children() メソッドを使用して、名前空間の障害を克服し、Simple XML で XML データを効果的に解析することです。
以上がSimpleXML を使用して名前空間付き XML ノードにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。