整形式の XML 文字列を SimpleXMLElement オブジェクトに変換し、オブジェクトのキーと要素を出力します。
<?php$note=<<<XML<note><to>トーベ</to><from>ジャニ</from><Heading>リマインダー</Heading><body>今週末は私を忘れないでください!</ body></note>XML;$xml=simplexml_load_string($note);print_r($xml);?>simplexml_load_string() 関数は、整形式の XML 文字列を SimpleXMLElement オブジェクトに変換します。
simplexml_load_string(データ,クラス名,オプション,ns,is_prefix );
パラメータ | 説明する |
---|---|
データ | 必須。整形式の XML 文字列を指定します。 |
クラス名 | オプション。新しいオブジェクトのクラスを指定します。 |
オプション | オプション。追加の Libxml パラメータを指定します。オプションに 1 または 0 (LIBXML_NOBLANKS(1) など、TRUE または FALSE) を指定して設定します。 可能な値: LIBXML_COMPACT - ノードの最適化された構成をアクティブ化します (アプリケーションを高速化できます) LIBXML_DTDATTR - デフォルトの DTD 属性を設定します LIBXML_DTDLOAD - 追加のサブセットをロードします LIBXML_DTDVALID - DTD の有効性を検証する LIBXML_NOBLANKS - 空のノードを削除します LIBXML_NOCDATA - CDATA をテキスト ノードに設定します LIBXML_NOEMPTYTAG - 空のタグを展開します (例: <br/> から <br></br>)。DOMDocument->save() および DOMDocument->saveXML() 関数でのみ有効です。 LIBXML_NOENT - 代替エンティティ LIBXML_NOERROR - エラーレポートを表示しません LIBXML_NONET - ドキュメントのロード中にネットワークへのアクセスを停止します LIBXML_NOWARNING - 警告レポートを表示しません LIBXML_NOXMLDECL - ドキュメントを保存するときに XML 宣言を破棄します LIBXML_NSCLEAN - 冗長な名前空間宣言を削除します LIBXML_PARSEHUGE - XML_PARSE_HUGE フラグを設定します。これにより、パーサーによって課される制約が緩和されます。これは、ドキュメントの最大深さやテキスト ノード サイズ制限などに影響します。 LIBXML_XINCLUDE - 代わりに XInclude を使用してください LIBXML_ERR_ERROR - 修正可能なエラーを取得する LIBXML_ERR_FATAL - 致命的なエラーを取得します LIBXML_ERR_NONE - エラーは発生しません LIBXML_ERR_WARNING - 簡単な警告を取得します LIBXML_VERSION - libxml バージョンを取得します (例: 20605 または 20617) LIBXML_DOTTED_VERSION - ドット付きの libxml バージョンを取得します (例: 2.6.5 または 2.6.17) |
ns | オプション。名前空間のプレフィックスまたは URI を指定します。 |
is_prefix | オプション。ブール値を指定します。 nsがプレフィックスの場合は TRUE、 nsが URI の場合は FALSE。デフォルトは FALSE です。 |
戻り値: | 成功した場合は SimpleXMLElement オブジェクトを返し、失敗した場合は FALSE を返します。 |
---|---|
PHPのバージョン: | 5+ |
XML 文字列内の各要素のデータを出力します。
<?php$note=<<<XML<note><to>トーベ</to><from>ジャニ</from><Heading>リマインダー</Heading><body>今週末は私を忘れないでください!</ body></note>XML;$xml=simplexml_load_string($note);echo $xml->to "<br>";echo $xml->from "<br>";echo $xml->見出し . "<br>";echo $xml->本文;?>各子ノードの要素名とデータを XML 文字列で出力します。
<?php$note=<<<XML<note><to>トーベ</to><from>ジャニ</from><Heading>リマインダー</Heading><body>今週末は私を忘れないでください!</ body></note>XML;$xml=simplexml_load_string($note);echo $xml->getName() "<br>";foreach($xml->children() as $child) { echo $child->getName() . $child .