diff options
Diffstat (limited to 'ext/xml/tests/xml_set_processing_instruction_handler_basic.phpt')
-rw-r--r-- | ext/xml/tests/xml_set_processing_instruction_handler_basic.phpt | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/ext/xml/tests/xml_set_processing_instruction_handler_basic.phpt b/ext/xml/tests/xml_set_processing_instruction_handler_basic.phpt new file mode 100644 index 0000000..e5589ce --- /dev/null +++ b/ext/xml/tests/xml_set_processing_instruction_handler_basic.phpt @@ -0,0 +1,52 @@ +--TEST-- +Test xml_set_processing_instruction_handler function : basic +--SKIPIF-- +<?php +if (!extension_loaded("xml")) { + print "skip - XML extension not loaded"; +} +?> +--FILE-- +<?php +/* Prototype : proto bool xml_set_processing_instruction_handler ( resource $parser , callback $handler ) + * Description: Sets the processing instruction (PI) handler function for the XML parser. + * Source code: ext/xml/xml.c + * Alias to functions: + */ + +class XML_Parser +{ + + function PIHandler($parser, $target, $data) + { + echo "Target: " . $target. "\n"; + echo "Data: " . $data . "\n"; + } + + function parse($data) + { + $parser = xml_parser_create(); + xml_set_object($parser, $this); + xml_set_processing_instruction_handler($parser, "PIHandler"); + xml_parse($parser, $data, true); + xml_parser_free($parser); + } + + +} + +$xml = <<<HERE +<?xml version="1.0" encoding="ISO-8859-1"?> +<?xml-stylesheet href="default.xsl" type="text/xml"?> +HERE; + +echo "Simple test of xml_set_processing_instruction_handler() function\n"; +$p1 = new Xml_Parser(); +$p1->parse($xml); +echo "Done\n"; +?> +--EXPECT-- +Simple test of xml_set_processing_instruction_handler() function +Target: xml-stylesheet +Data: href="default.xsl" type="text/xml" +Done
\ No newline at end of file |