XML Functions

As of Version 3.0.6, PHP has XML support built on top of James Clark’s expat library (see http://www.guardian.no/~ssb/phpxml.html).

XML Event Handlers

PHP’s XML support is event-driven. This means you can set up functions that can handle different types of data from the parser. Here are the different types of handlers.

Element handlers

Called when the parser encounters start and end elements (tags)

Character data handler

Called when nonmarkup character data is found

Processing instruction (PI) handler

Called for processing instruction information; PHP code, among other things, can be embedded into such markup

Notation declaration handler

Called for notation definitions (notations are a way of declaring data formats)

External entity reference handler and unparsed entity declaration handler

Called for entity references and declarations

Default handler

Called for data that is not covered by any other handler

Character Encoding

The XML extension supports three character sets: US-ASCII, ISO-8859-1, and UTF-8 encoded Unicode. Input (source) and output (target) encoding can be controlled separately. UTF-16 is not supported.

Function Reference

Here are the XML functions provided by PHP:

string utf8_decode(string data)

Convert a UTF-8 encoded string to ISO-8859-1

string utf8_encode(string data)

Encode an ISO-8859-1 string to UTF-8

string xml_error_string(int code)

Get XML parser error string

int xml_get_current_byte_index(int parser)

Get the current byte index for the XML ...

Get Webmaster in a Nutshell, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.