Professional PHP4 XML by Luis Argerich, Chris Lea, Ken Egervari, Matt Anton, Chris Hubbard, James Fuller, Charlie Killian.
Published by Wrox Press.
PHP itself is usually very straightforward and easy to understand, but throw in the world of XML and things can become overwhelming very quickly. DOM, RSS, SAX, XPath, XSLT, XSL, XML-RPC - wow! Professional PHP4 XML will answer the questions "What is XML?" and "How do I use XML within PHP?"
The book starts off with a nice introduction to PHP, including the use of classes and file functions. It isn't meant to teach you everything you need to know about PHP, but to be refresher course for information that will be used throughout the book. It was nice to see the promotion of the new superglobal arrays in this section of the book.
Next, they jump into a chapter devoted to XML Fundamentals. This chapter explains the rules and syntax that a well-formed XML document must adhere to. DTDs and Schemas are discussed as methods to validate XML documents as well as define XML vocabularies. All in all, after reading this chapter you should have a good base to build upon for the rest of the book.
The rest of the book is devoted to giving you detail on the different derivatives of XML and how and when do use them with PHP. Topics covered include:
SAX via PHP's Expat parser
DOM
XPath
XSL via Sablotron
Third party class for PHP such as XML File and phpXML
RSS
XML and databases
SVG
XML-RPC
One of the things I love about this book is that for each of these XML derivatives, they provide a detailed list of advantages and disadvantages. This enables you to determine which of these technologies is best suited for the application you are designing.
This book is an excellent resource for the beginner and advanced programmer alike. It is a mixture of a tutorial and reference book without comprising either. If you are serious about developing applications with PHP and XML, this book should be in your collection.
DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware.