This is an interesting and challenging book. The running scenario presented seems to be quite simple: in order to do some server clean up you want a list of all the graphics files in a particular directory, you need to see the files and the file names. After working through several versions of the code, it generates then displays thumbnail views of the images, with a preset number of images per page, and with a navigation tool. Along the way the reader learns about classes, methods and inheritance. Using a connection to a MySQL database, the author reuses the original code to display the result of a query, something like the on-screen result of a search in Google. The author also deals with catching errors and exceptions and implementing an interface. All of that is before the more advanced work in chapters 11 to 16.
At the time of writing this review there were three errors in the text posted on the web site. The site contains files with all of the code for the book, either in one large archive or chapter by chapter. Files are provided in both zip and tarball formats, so they should be usable on most computers.
Lavin’s writing is clear and concise. The book should be understood by most of the target audience. As I read the book I wished I was more familiar with OOP concepts. Common concepts in OOP are explained clearly, but very briefly, in chapter 2. However some of these concepts don't get used for several chapters. The Glossary is quite clear and useful. But sometimes I wished there was a sentence or two reminding me what a term meant at the point where it was put to work, not just a reference to a previous chapter. I expect the same will be true of someone with OOP experience but no PHP or HTML experience. There were not quite enough reminders about previous learning.
The book is designed for people who want to learn about the power of OOP using PHP. It is a little challenging, but learning anything new will be challenging. Lavin has focused on a highly useful area of knowledge for web developers and has done an excellent job. Recommended.