|
xml_parse_into_struct配列構造体に XML データを処理する 説明
intfalse xml_parse_into_struct(
XMLParser $parser,string $data,array &$values,array &$index = null)
この関数は、XML 文字列を処理し、2つの配列構造体に代入します。
ひとつめの配列 ( パラメータ
戻り値
xml_parse_into_struct は失敗した場合に 0、
成功した場合に 1 を返します。これは 変更履歴
例
以下の例は、この関数により生成された配列の内部構造を示すものです。
例1 xml_parse_into_struct の例 このコードを実行した場合、出力は次のようになります。
Index array
Array
(
[PARA] => Array
(
[0] => 0
[1] => 2
)
[NOTE] => Array
(
[0] => 1
)
)
Vals array
Array
(
[0] => Array
(
[tag] => PARA
[type] => open
[level] => 1
)
[1] => Array
(
[tag] => NOTE
[type] => complete
[level] => 2
[value] => simple note
)
[2] => Array
(
[tag] => PARA
[type] => close
[level] => 1
)
)
(expatライブラリを使用した)イベント駆動型パーサによる処理は、XML ドキュメントが複雑な場合に複雑になる場合があります。この関数は、 DOM形式のオブジェクトを生成しませんが、ツリー風に一連の処理を行い 得る構造体を生成します。つまり、XMLのファイルを表すオブジェクトを 容易に作成することが可能です。次のXMLファイルを見てみましょう。 このファイルでは、アミノ酸の情報に関する小さなデータベースを表します。 例2 moldb.xml - 分子情報の小さなデータベース <?xml version="1.0"?>
<moldb>
<molecule>
<name>Alanine</name>
<symbol>ala</symbol>
<code>A</code>
<type>hydrophobic</type>
</molecule>
<molecule>
<name>Lysine</name>
<symbol>lys</symbol>
<code>K</code>
<type>charged</type>
</molecule>
</moldb>
例3 parsemoldb.php - moldb.xml を処理し、分子オブジェクトの配列に代入
** Database of AminoAcid objects:
Array
(
[0] => aminoacid Object
(
[name] => Alanine
[symbol] => ala
[code] => A
[type] => hydrophobic
)
[1] => aminoacid Object
(
[name] => Lysine
[symbol] => lys
[code] => K
[type] => charged
)
)
|