PHP XML Functions
PHP XML Parser Functions
XML functions allow you to parse XML documents, but cannot validate them.
XML is a data format used for exchanging standard structured documents. You can find more information about XML in our XML Tutorial.
This extension uses the Expat XML parser.
Expat is an event-based parser that treats XML documents as a series of events. When an event occurs, it calls a specified function to handle it.
Expat is a non-validating parser, ignoring any DTD linked to the document. However, if the document is malformed, it will end with an error message.
Since it is an event-based, non-validating parser, Expat is fast and suitable for web applications.
XML parser functions allow you to create an XML parser and define handlers for XML events.
Installation
XML Parser functions are part of the PHP core. These functions can be used without installation.
PHP XML Parser Functions
PHP: Indicates the earliest PHP version that supports the function.
| Function | Description | PHP |
|---|---|---|
| utf8_decode() | Decodes a UTF-8 string to ISO-8859-1. | 3 |
| utf8_encode() | Encodes an ISO-8859-1 string to UTF-8. | 3 |
| xml_error_string() | Gets the error string for the XML parser. | 3 |
| xml_get_current_byte_index() | Gets the current byte index of the XML parser. | 3 |
| xml_get_current_column_number() | Gets the current column number of the XML parser. | 3 |
| xml_get_current_line_number() | Gets the current line number of the XML parser. | 3 |
| xml_get_error_code() | Gets the error code of the XML parser. | 3 |
| xml_parse() | Parses an XML document. | 3 |
| xml_parse_into_struct() | Parses XML data into an array. | 3 |
| xml_parser_create_ns() | Creates an XML parser with namespace support. | 4 |
| xml_parser_create() | Creates an XML parser. | 3 |
| xml_parser_free() | Frees an XML parser. | 3 |
| xml_parser_get_option() | Gets options from the XML parser. | 3 |
| xml_parser_set_option() | Sets options for the XML parser. | 3 |
| xml_set_character_data_handler() | Sets up a character data handler. | 3 |
| xml_set_default_handler() | Sets up a default handler. | 3 |
| xml_set_element_handler() | Sets up start and end element handlers. | 3 |
| xml_set_end_namespace_decl_handler() | Sets up an end namespace declaration handler. | 4 |
| xml_set_external_entity_ref_handler() | Sets up an external entity handler. | 3 |
| xml_set_notation_decl_handler() | Sets up a notation declaration handler. | 3 |
| xml_set_object() | Uses an XML parser in an object. | 4 |
| xml_set_processing_instruction_handler() | Sets up a processing instruction (PI) handler. | 3 |
| xml_set_start_namespace_decl_handler() | Sets up a start namespace declaration handler. | 4 |
| xml_set_unparsed_entity_decl_handler() | Sets up an unparsed entity declaration handler. | 3 |
PHP XML Parser Constants
| Constant |
|---|
| XML_ERROR_NONE (integer) |
| XML_ERROR_NO_MEMORY (integer) |
| XML_ERROR_SYNTAX (integer) |
| XML_ERROR_NO_ELEMENTS (integer) |
| XML_ERROR_INVALID_TOKEN (integer) |
| XML_ERROR_UNCLOSED_TOKEN (integer) |
| XML_ERROR_PARTIAL_CHAR (integer) |
| XML_ERROR_TAG_MISMATCH (integer) |
| XML_ERROR_DUPLICATE_ATTRIBUTE (integer) |
| XML_ERROR_JUNK_AFTER_DOC_ELEMENT (integer) |
| XML_ERROR_PARAM_ENTITY_REF (integer) |
| XML_ERROR_UNDEFINED_ENTITY (integer) |
| XML_ERROR_RECURSIVE_ENTITY_REF (integer) |
| XML_ERROR_ASYNC_ENTITY (integer) |
| XML_ERROR_BAD_CHAR_REF (integer) |
| XML_ERROR_BINARY_ENTITY_REF (integer) |
| XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF (integer) |
| XML_ERROR_MISPLACED_XML_PI (integer) |
| XML_ERROR_UNKNOWN_ENCODING (integer) |
| XML_ERROR_INCORRECT_ENCODING (integer) |
| XML_ERROR_UNCLOSED_CDATA_SECTION (integer) |
| XML_ERROR_EXTERNAL_ENTITY_HANDLING (integer) |
| XML_OPTION_CASE_FOLDING (integer) |
| XML_OPTION_TARGET_ENCODING (integer) |
| XML_OPTION_SKIP_TAGSTART (integer) |
| XML_OPTION_SKIP_WHITE (integer) |
YouTip