XML_Parser XML parsing class based on PHP's bundled expat This is an XML parser based on PHPs built-in xml extension. It supports two basic modes of operation: "func" and "event". In "func" mode, it will look for a function named after each element (xmltag_ELEMENT for start tags and xmltag_ELEMENT_ for end tags), and in "event" mode it uses a set of generic callbacks. Since version 1.2.0 there's a new XML_Parser_Simple class that makes parsing of most XML documents easier, by automatically providing a stack for the elements. Furthermore its now possible to split the parser from the handler object, so you do not have to extend XML_Parser anymore in order to parse a document with it. schst Stephan Schmidt schst@php-tools.net lead ssb Stig Sæther Bakken stig@php.net developer cox Tomas V.V.Cox cox@php.net developer 1.2.6 2005-03-25 PHP License stable - fixed Bug #3949: reset does not return true on success as the documentation states - implement Request #3905: replace "." with "_" in tagnames when using func mode - added package2.xml file for PEAR 1.4.0 PEAR 1.1.0beta1 2004-04-16 PHP License beta - Fixed memory leaks parsing many documents or big files (mroch) - Fixed setInput() url detection regex (mroch) - Added setInputString() method, allowing strings to be passed as input (schst) - Error handling rewritten (cox) - Increased the overall parsing speed (cox) - Added free() method (schst - Added reset() method, that is called when parsing a document so it is possible to parse more than one document per instance (schst) - Added error codes (schst) - revamped documentation (cox, schst) - Fixed bug #516 (url fopen and safe mode) (schst) - Fixed bug #637 (dependency on PEAR) (schst) - improved parse() and parseString() to be able to parse more than one document (schst) - added PHP5 constructor (schst) - moved xml_parser_create() to _create() for PHP5 compatibility (schst) - added dependency on PHP 4.2 Thanks to Marshall Roch for commments and contributions and Tomas V.V. Cox for applying a lot of fixes and improvements. 1.1.0beta2 2004-04-18 PHP License beta beta2: - Fixed calling of __construct beta1: - Fixed memory leaks parsing many documents or big files (mroch) - Fixed setInput() url detection regex (mroch) - Added setInputString() method, allowing strings to be passed as input (schst) - Error handling rewritten (cox) - Increased the overall parsing speed (cox) - Added free() method (schst - Added reset() method, that is called when parsing a document so it is possible to parse more than one document per instance (schst) - Added error codes (schst) - revamped documentation (cox, schst) - Fixed bug #516 (url fopen and safe mode) (schst) - Fixed bug #637 (dependency on PEAR) (schst) - improved parse() and parseString() to be able to parse more than one document (schst) - added PHP5 constructor (schst) - moved xml_parser_create() to _create() for PHP5 compatibility (schst) - added dependency on PHP 4.2 Thanks to Marshall Roch for commments and contributions and Tomas V.V. Cox for applying a lot of fixes and improvements. 1.1.0 2004-04-23 PHP License stable - Fixed memory leaks parsing many documents or big files (mroch) - Fixed setInput() url detection regex (mroch) - Added setInputString() method, allowing strings to be passed as input (schst) - Error handling rewritten (cox) - Increased the overall parsing speed (cox) - Added free() method (schst - Added reset() method, that is called when parsing a document so it is possible to parse more than one document per instance (schst) - Added error codes (schst) - revamped documentation (cox, schst) - Fixed bug #516 (url fopen and safe mode) (schst) - Fixed bug #637 (dependency on PEAR) (schst) - improved parse() and parseString() to be able to parse more than one document (schst) - added PHP5 constructor (schst) - moved xml_parser_create() to _create() for PHP5 compatibility (schst) - added dependency on PHP 4.2 Thanks to Marshall Roch for commments and contributions and Tomas V.V. Cox for applying a lot of fixes and improvements. 1.2.0beta1 2004-05-17 PHP License beta added new class XML_Parser_Simple that provides a stack for the elements so the user only needs to implement one method to handle the tag and cdata. 1.2.0beta2 2004-05-24 PHP License beta XML_Parser: - fixed bug with setMode() - moved the init routines for the handlers in _initHandlers() XML_Parser_Simple: - fixed bug with character data (did not get parsed) - fixed bug with setMode() - some refactoring - added getCurrentDepth() to retrieve the tag depth - added addToData() - added new example 1.2.0beta3 2004-05-25 PHP License beta - added setHandlerObj() which allows you to have the parser separate from the handler methods 1.2.0 2004-05-28 PHP License stable - added setHandlerObj() which allows you to have the parser separate from the handler methods - fixed bug with setMode() - moved the init routines for the handlers in _initHandlers() - added new examples - fixed test files so they do not fail because of different resource ids XML_Parser_Simple: - added new class XML_Parser_Simple that provides a stack for the elements so the user only needs to implement one method to handle the tag and cdata. 1.2.1 2004-10-04 PHP License stable fixed bug #2442: Call to "xmltag_ELEMENT_" not correctly managed in function funcEndHandler 1.2.2beta1 2004-12-22 PHP License beta - fixed small notice in XML_Parser::free(), - fixed Bug #2939: bug in error routine leads to segmentation fault (raiseError does not free the internal resources anymore) 1.2.2 2004-12-22 PHP License stable - fixed small notice in XML_Parser::free(), - fixed Bug #2939: bug in error routine leads to segmentation fault (raiseError does not free the internal resources anymore) 1.2.3 2005-01-17 PHP License stable - fixed a bug that occured when using 'func' mode and setHandlerObj() (schst) - added default handlers for 'func' mode (schst) 1.2.4 2005-01-18 PHP License stable - fixed a bug in XML_Parser_Simple when trying to register more than the default handlers and a separate callback object (schst) 1.2.5 2005-02-26 PHP License stable - fixed Bug #3557 (removed $attribs parameter, which caused a notice) - fixed Bug #3277 (remove obsolete ini_set('allow_url_fopen')) 1.2.6 2005-03-25 PHP License stable - fixed Bug #3949: reset does not return true on success as the documentation states - implement Request #3905: replace "." with "_" in tagnames when using func mode