PHP xml_set_default_handler() 함수

정의와 사용법

xml_set_default_handler() 함수는 XML 파서에 기본 데이터 처리기를 설정합니다.

이 함수는 파서가 XML 파일에서 데이터를 찾을 때마다 호출되는 함수를 지정합니다.

처리기가 성공적으로 설정되면 이 함수는 true를 반환하며, 그렇지 않으면 false를 반환합니다.

문법

xml_set_default_handler(parser,handler)
파라미터 설명
parser 필수입니다. 사용할 XML 파서를 지정합니다.
handler 필수입니다. 이벤트 처리기로 사용할 함수를 지정합니다.

handler 파라미터가 지정하는 함수는 세 가지 매개변수를 가져야 합니다:

파라미터 설명
parser 필수입니다. XML 파서를 포함하는 변수를 지정합니다.
data 필수입니다. 데이터를 포함하는 변수를 지정합니다.

설명

handler 파라미터는 배열이 될 수도 있으며, 객체 참조와 메서드 이름을 포함할 수 있습니다.

예시

XML 파일:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>George</to>
<from>John</from>
<heading>추억</heading>
<body>미팅을 잊지 마세요!</body>
</note>

PHP 코드:

<?php
$parser=xml_parser_create();
function default($parser,$data)
  {
  echo $data;
  }
xml_set_default_handler($parser,"default");
$fp=fopen("test.xml","r");
while ($data=fread($fp,4096))
  {
  xml_parse($parser,$data,feof($fp)) or 
  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);
?>

출력:

George John 추억 미팅을 잊지 마세요!

브라우저에서 소스 코드를 확인하면 다음과 같은 HTML을 볼 수 있습니다:

<note>
<to>George</to>
<from>John</from>
<heading>추억</heading>
<body>미팅을 잊지 마세요!</body>
</note>