PHP In Action: Objects, Design, Agility.

Great book on web application programming, Object Oriented PHP, Test Driven PHP.

Authors: Dagfinn Reiersol; Marcus Baker; Chris Shiflett:

Manning Publications, 2007.

From the overview:

To keep programming productive and enjoyable, state-of-the-art practices and principles are essential. Object-oriented programming and design help manage complexity by keeping components cleanly separated. Unit testing helps prevent endless, exhausting debugging sessions. Refactoring keeps code supple and readable. PHP offers all this-and more.

The book consists of four parts:

1. Tools and concepts

2. Testing and refactoring

3. Building the web interface

4. Databases and infrastructure

Recurring themes in this book: The new object-oriented features in PHP 5 compared to PHP 4; OO programming in general, design patterns, TDD. In fact I would say that in large parts of the book, this is not so much about PHP itself, but more about OO and TDD practices, while the PHP language really just appears as an implementation detail.

As the book progresses, things get gradually more and more interesting, as the topics of web application design and development come to the centre stage. Extremely interesting discussions of the questions of ‘how’ things should be done, from perspectives of OO, TDD and Web application development.

Who is this book for? If you have never programmed in PHP before, this should probably not be the first book you read about PHP. In that case, I would suggest ‘Learning PHP’ by David Sklar.

Detailed PHP language feature explanations should be sought elsewhere, as the focus here is on the higher level of application design.