XML Parser xml_set_unparsed_entity_decl_handler
(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_unparsed_entity_decl_handler — 구문 분석되지 않은 엔티티 선언 핸들러 설정
설명
xml_set_unparsed_entity_decl_handler(XMLParser $parser
, callable $handler
): bool
XML 파서 parser
에 대한 파싱되지 않은 엔티티 선언 핸들러 함수를 설정합니다.
XML 파서가 다음과 같이 NDATA 선언이 있는 외부 엔터티 선언을 만나면 handler
가 호출됩니다.
<!ENTITY <parameter>name</parameter> {<parameter>publicId</parameter> | <parameter>systemId</parameter>} NDATA <parameter>notationName</parameter>
외부 엔티티로 선언된 표기법의 정의에 대해서는 » XML 1.0 사양의 섹션 4.2.2를 참조하세요.
매개변수
parser
- 구문 분석되지 않은 엔터티 선언 처리기 함수를 설정하기 위한 XML 구문 분석기에 대한 참조입니다.
handler
handler
는parser
를 위해 xml_parse()가 호출될 때 존재해야 하는 함수의 이름을 포함하는 문자열입니다.handler
에 의해 명명된 함수는 6개의 매개변수를 허용해야 합니다.handler( XMLParser $parser, string $entity_name, string $base, string $system_id, string $public_id, string $notation_name )
parser
- 첫 번째 매개변수인 parser는 핸들러를 호출하는 XML 파서에 대한 참조입니다.
entity_name
- 정의하려는 엔터티의 이름입니다.
base
- 이것은 외부 엔티티의 시스템 식별자(
systemId
)를 확인하기 위한 기반입니다. 현재 이 매개변수는 항상 빈 문자열로 설정됩니다. system_id
- 외부 엔터티의 시스템 식별자입니다.
public_id
- 외부 엔터티의 공용 식별자입니다.
notation_name
- 이 엔티티의 표기법 이름(xml_set_notation_decl_handler() 참조).
핸들러 함수가 빈 문자열 또는
false
로 설정되면 해당 핸들러가 비활성화됩니다.참고: 함수 이름 대신 객체 참조와 메서드 이름이 포함된 배열을 제공할 수도 있습니다.
반환 값
성공하면 true
를, 실패하면 false
를 반환합니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 | parser 는 이제 XMLParser 인스턴스를 예상합니다. 이전에는 리소스가 필요했습니다. |