xml_set_object
(PHP 4, PHP 5, PHP 7)
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
を返します。
例
例1 xml_set_object() の例
<?phpclass 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"