XML Parser xml_set_element_handler

(PHP 4, PHP 5, PHP 7, PHP 8)

xml_set_element_handler — 시작 및 종료 요소 처리기 설정


설명

xml_set_element_handler(XMLParser $parser, callable $start_handler, callable $end_handler): bool

XML parser에 대한 요소 처리기 함수를 설정합니다. start_handlerend_handlerparser에 대해 xml_parse()가 호출될 때 존재해야 하는 함수의 이름을 포함하는 문자열입니다.


매개변수

parser
시작 및 종료 요소 처리기 함수를 설정하기 위한 XML 파서에 대한 참조입니다.
start_handler
start_handler에 의해 명명된 함수는 세 개의 매개변수를 허용해야 합니다.

start_element_handler(XMLParser $parser, string $name, array $attribs)

parser
첫 번째 매개변수인 parser는 핸들러를 호출하는 XML 파서에 대한 참조입니다.
name
두 번째 매개변수인 name은 이 핸들러가 호출되는 요소의 이름을 포함합니다. 이 구문 분석기에 case-folding이 적용되는 경우 요소 이름은 대문자가 됩니다.
attribs
세 번째 매개변수인 attribs는 요소의 속성(있는 경우)이 있는 연관 배열을 포함합니다. 이 배열의 키는 속성 이름이고 값은 속성 값입니다. 속성 이름은 요소 이름과 동일한 기준으로 case-folded합니다. 속성 값은 대소문자를 구분하지 않습니다. 속성의 원래 순서는 each()를 사용하여 일반적인 방식으로 attribs을 탐색하여 검색할 수 있습니다. 배열의 첫 번째 키는 첫 번째 속성이었고, 이런 식으로 계속됩니다.

참고: 함수 이름 대신 객체 참조와 메서드 이름이 포함된 배열을 제공할 수도 있습니다.

end_handler
end_handler로 명명된 함수는 두 개의 매개변수를 허용해야 합니다.

end_element_handler(XMLParser $parser, string $name)

parser
첫 번째 매개변수인 parser는 핸들러를 호출하는 XML 파서에 대한 참조입니다.
name
두 번째 매개변수인 name은 이 핸들러가 호출되는 요소의 이름을 포함합니다. 이 구문 분석기에 case-folding이 적용되는 경우 요소 이름은 대문자가 됩니다.

핸들러 함수가 빈 문자열 또는 false로 설정되면 해당 핸들러가 비활성화됩니다.


반환 값

성공하면 true를, 실패하면 false를 반환합니다.


변경 로그

버전 설명
8.0.0 parser는 이제 XMLParser 인스턴스를 예상합니다. 이전에는 리소스가 필요했습니다.