XML Parser xml_set_notation_decl_handler

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

xml_set_notation_decl_handler — 표기법 선언 핸들러 설정


설명

xml_set_notation_decl_handler(XMLParser $parser, callable $handler): bool

XML 파서 parser에 대한 표기법 선언 핸들러 함수를 설정합니다.

표기법 선언은 문서 DTD의 일부이며 다음 형식을 갖습니다.

<!NOTATION <parameter>name</parameter>
{ <parameter>systemId</parameter> | <parameter>publicId</parameter>?>
                

표기법 선언의 정의는 » XML 1.0 사양의 섹션 ​​4.7을 참조하세요.


매개변수

parser
표기법 선언 처리기 함수를 설정하기 위한 XML 파서에 대한 참조입니다.
handler
handlerparser를 위해 xml_parse()가 호출될 때 존재해야 하는 함수의 이름을 포함하는 문자열입니다.

handler에 의해 명명된 함수는 5개의 매개변수를 허용해야 합니다.

handler(
    XMLParser $parser,
    string $notation_name,
    string $base,
    string $system_id,
    string $public_id
)
                     
parser
첫 번째 매개변수인 parser는 핸들러를 호출하는 XML 파서에 대한 참조입니다.
notation_name
이것은 위에서 설명한 표기법 형식에 따른 표기법의 name입니다.
base
표기법 선언의 시스템 식별자(system_id)를 확인하기 위한 기반입니다. 현재 이 매개변수는 항상 빈 문자열로 설정됩니다.
system_id
외부 표기법 선언의 시스템 식별자입니다.
public_id
외부 표기법 선언의 공용 식별자입니다.

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

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


반환 값

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


변경 로그

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