xml_parse() 함수는 XML 문서를 구문 분석합니다.
성공하면 함수는 TRUE를 반환합니다. 실패하면 FALSE를 반환합니다.
xml_parse(파서,xml,end)
매개변수 | 설명하다 |
---|---|
파서 | 필수의. 사용할 XML 구문 분석기를 지정합니다. |
xml | 필수의. 구문 분석할 XML 데이터를 지정합니다. |
끝 | 선택 과목. 이 매개변수가 TRUE인 경우 "xml" 매개변수의 데이터는 현재 구문 분석의 마지막 데이터입니다. 참고: 엔터티 오류는 구문 분석이 끝나면 "end" 매개변수가 TRUE인 경우에만 보고됩니다. |
팁: XML 파서를 생성하려면 xml_parser_create() 함수를 사용하세요.
XML 파일
<?xml version="1.0" 인코딩="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>알림</heading><body>Don 이번 주말에 저를 잊지 마세요!</body></note>
PHP 코드
<?php$parser=xml_parser_create();function char($parser,$data) { echo $data }xml_set_character_data_handler($parser,"char");$fp=fopen("test.xml","r") ;while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) 또는 die (sprintf("XML 오류: %s 라인 %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))) }xml_parser_free($parser);?>
위 코드의 출력은 다음과 같습니다.
Tove Jani 알림 이번 주말에 저를 잊지 마세요!
동일한 XML 파일을 사용하지만 XML 데이터를 다른 방식으로 표시합니다.
<?php$parser=xml_parser_create();function start($parser,$element_name,$element_attrs) { switch($element_name) { case "NOTE": echo "-- 참고 --<br />"; "TO": echo "대상: "; case "FROM": echo "From: "; echo "제목: "; echo "메시지: "; } }function stop($parser,$element_name) { echo "<br />" }function char($parser,$data) { echo $data($parser,"start" ,"중지");xml_set_character_data_handler($parser,"char");$fp=fopen("test.xml","r");while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) 또는 die (sprintf("XML 오류: %s at line %d", xml_error_string(xml_get_error_code($parser) )), xml_get_current_line_number($parser))); }xml_parser_free($parser);?>
위 코드의 출력은 다음과 같습니다.
-- 참고 --받는 사람: ToveFrom: JaniHeading: ReminderMessage: 이번 주말에 저를 잊지 마세요!