XML Parser xml_set_object
(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_object — 개체 내에서 XML 파서 사용
설명
xml_set_object(XMLParser $parser
, object $object
): bool
이 함수를 사용하면 object
내부에서 parser
를 사용할 수 있습니다. 모든 콜백 함수는 xml_set_element_handler() 등으로 설정할 수 있으며 object
의 메소드로 가정합니다.
매개변수
parser
- 개체 내부에서 사용할 XML 파서에 대한 참조입니다.
object
- XML 파서를 사용할 개체입니다.
반환 값
성공하면 true
를, 실패하면 false
를 반환합니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 | parser 는 이제 XMLParser 인스턴스를 예상합니다. 이전에는 리소스가 필요했습니다. |
Examples
예제 #1 xml_set_object() 예제
<?php
class XMLParser
{
private $parser;
function __construct()
{
$this->parser = xml_parser_create();
xml_set_object($this->parser, $this);
xml_set_element_handler($this->parser, "tag_open", "tag_close");
xml_set_character_data_handler($this->parser, "cdata");
}
function __destruct()
{
xml_parser_free($this->parser);
unset($this->parser);
}
function parse($data)
{
xml_parse($this->parser, $data);
}
function tag_open($parser, $tag, $attributes)
{
var_dump($tag, $attributes);
}
function cdata($parser, $cdata)
{
var_dump($cdata);
}
function tag_close($parser, $tag)
{
var_dump($tag);
}
}
$xml_parser = new XMLParser();
$xml_parser->parse("<A ID='hallo'>PHP</A>");
?>
위의 예는 다음을 출력합니다.
string(1) "A" array(1) { ["ID"]=> string(5) "hallo" } string(3) "PHP" string(1) "A"