В PHP существуют 2 модуля работы с XML, реализующие 2 разных стандарта обработки XML-данных: SAX (Simple API for XML) и DOM (Document Object Model). Необходимо вкратце пояснить, что представляют собой эти стандарты.
Стандарт SAX не является стандартом W3C, официальным сайтом для него является . Этот стандарт описывает метод парсинга XML документов для получения данных из них. Т.е. этот метод обработки XML-документов позволит вам только прочитать данные из XML-документа и не более того. Создавать и изменять XML-документы с его помощью вы не сможете.
SAX основан на т.н. событийном программировании. Его особенностью является то, что вы предоставляете парсеру XML набор собственных функций, которые будут заниматься обработкой различных типов XML-данных (элементов (тегов), текста и т.п.), а парсер затем будет сам вызывать ваши функции в процессе обработки XML-документа, передавая им найденные данные. Важной особенностью здесь является порядок вызова ваших функций, который вы должны будете учесть при их написании: ваши функции будут вызываться в той же последовательности, в которой соответствующие даные располагаются в XML-документе. В следующем разделе мы рассмотрим пример чтения данных из XML-документа с использованием SAX.
Другим стандартом для обработки XML-данных является DOM - стандарт W3C, спецификацию которого вы можете найти . В отличие от SAX этот метод позволяет вам производить любые операции с XML-данными в очень удобной форме - представляя XML-документ как дерево объектов. Далее мы рассмотрим пример того, как можно работать с XML через DOM из PHP. Исходные тексты всех приведенных здесь примеров можно скачать в виде .zip архива.
Навигация