ホームページ > バックエンド開発 > PHPチュートリアル > SimpleXML を使用してカスタム名前空間の要素にアクセスするにはどうすればよいですか?

SimpleXML を使用してカスタム名前空間の要素にアクセスするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-07 07:34:02
オリジナル
922 人が閲覧しました

How Can I Access Elements in Custom Namespaces Using SimpleXML?

PHP 名前空間 SimpleXML の課題

問題:

カスタム名前空間を使用する XML を解析する場合SimpleXML、これらの名前空間内の要素にはアクセスできません。

XML 構造:

<code class="xml"><?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></code>
ログイン後にコピー

解決策:

要素にアクセスするにはカスタム名前空間では、最初の引数として名前空間 URL を指定して Children() メソッドを使用します。

<code class="php">$rss = simplexml_load_string($xmlString);

foreach ($rss->channel as $channel) {
    echo 'link: ', $channel->link, "\n";
    echo 'genre: ', $channel->children('moshtix', true)->genre, "\n";
}</code>
ログイン後にコピー

出力:

link: qweqwe
genre: asdasd
ログイン後にコピー

このアプローチにより、内部の要素をターゲットにしてアクセスできます。指定された名前空間を使用して、複雑な名前空間構造を持つ XML の解析を容易にします。

以上がSimpleXML を使用してカスタム名前空間の要素にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート