このページは、PHP の SimpleXML のスニペットなどをまとめる予定のページです。
目次
注意
- コードのライセンスは CC0 (クレジット表示不要、改変可、商用可) です。
スニペット
XML 読み込み (文字列から)
XML 読み込み (ファイルから)
値のアクセス
※ 要素の名前空間 URI や接頭辞を取得することはできないようですが、dom_import_simplexml()
で DOMElement に変換して namespaceURI, prefix で取得することはできます。
子要素の反復処理
同じ名前空間の子要素
※ 反復処理する値にテキストノードや名前空間の違う要素は含まれません。
指定した名前空間の子要素
children()
で名前空間を指定できます。(children('名前空間接頭辞', true)
または children('名前空間URI')
)
すべての子要素
xpath('*')
などですべての子要素を指定できます。
XPath 検索
※ 要素を返す用途以外の XPath は評価できません。(count(*)
など)
SimpleXMLElement を DOM (DOMElement) に変換
連想配列に変換
簡易的な変換
※ 要素と並列しているテキストノードや名前空間の違う要素は含まれません。
補足
SimpleXML は取得したい要素がいくつのときでも透過的に対応できるため、わざわざ連想配列に変換しなくてもいいかもしれません。