xml_parse
XMLドキュメントの解析を開始します
xml_parse()関数は、XMLドキュメントを解析するために使用されます。
ヒント: XMLパーサーを作成するには、 xml_parser_create()関数を使用します。
XMLパーサーを作成し、XMLドキュメント( Note.XML )を解析します。
<?php
// XMLパーサーを作成します
$ parser = xml_parser_create ( ) ;
function char ( $ parser 、 $ data ) {
echo $ data ;
}
xml_set_character_data_handler ( $ parser 、 "char" ) ;
$ fp = fopen ( "note.xml" 、 "r" ) ;
while ( $ data = fread ( $ fp 、 4096 ) ) {
// XMLデータを解析します
xml_parse ( $ parser 、 $ data 、 feof ( $ fp ) )または
die ( sprintf ( "xmlエラー:オンライン%d") 、
XML_ERROR_STRING ( XML_GET_ERROR_CODE ( $ PARSER ) ) 、
xml_get_current_line_number ( $ parser ) ) ) ;
}
xml_parser_free ( $ parser ) ;
fclose ( $ fp ) ;
?>
インスタンスを実行します
同じXMLファイルを使用しますが、XMLデータを別の方法で表示します。
<?php
$ parser = xml_parser_create ( ) ;
function start ( $ parser 、 $ element_name 、 $ element_attrs ) {
switch ( $ element_name ) {
ケース「ノート」 :
echo "note <br>" ;
壊す;
ケース"to" :
echo "to:" ;
壊す;
ケース"from" :
echo "from:" ;
壊す;
ケース「見出し」 :
エコー"見出し:" ;
壊す;
ケース「ボディ」 :
echo "メッセージ:" ;
}
}
関数stop ( $ parser 、 $ element_name ) {
echo "<br>" ;
}
function char ( $ parser 、 $ data ) {
echo $ data ;
}
xml_set_element_handler ( $ parser 、 "start" 、 "stop" ) ;
xml_set_character_data_handler ( $ parser 、 "char" ) ;
$ fp = fopen ( "note.xml" 、 "r" ) ;
while ( $ data = fread ( $ fp 、 4096 ) ) {
xml_parse ( $ parser 、 $ data 、 feof ( $ fp ) )または
die ( sprintf ( "xmlエラー:オンライン%d") 、
XML_ERROR_STRING ( XML_GET_ERROR_CODE ( $ PARSER ) ) 、
xml_get_current_line_number ( $ parser ) ) ) ;
}
xml_parser_free ( $ parser ) ;
fclose ( $ fp ) ;
?>
インスタンスを実行します
xml_parse (パーサー、データ、終了)
| パラメーター | 説明する |
|---|---|
| パーサー | 必須。使用するXMLパーサーを指定します |
| データ | 必須。解析するデータを指定します。 |
| 終わり | オプション。 trueに設定されている場合、データパラメーターのデータは、この解析で送信された最後のデータです。 注:エンティティエラーは解析の終了時に報告され、最終パラメーターがtrueの場合にのみ表示されます。 |