I am often asked for book recommendations by friends and associates wanting to learn new technologies or programming languages. The request I get most often though is for a good book to learn PHP. Recently, I read PHP 5: Your Visual Blueprint for Creating Open Source, Server-Side Content by Toby Joe Boudreaux. I figured it might make a good review for me on the changes in PHP 5 and it looked like a book that I could potentially recommend to new PHP programmers.
This book takes a rather unique approach to teaching PHP 5. It’s part of Wiley’s “Visual” series. They claim to aid visual learners in learning the subject quickly. Each very small section has a small amount of descriptive text that covers about half a page. The next page and a half consists of screen shots of PHP code being typed into a text file and the final output. I can see how this visual approach learning might be helpful when learning to knit or repair your car. However, for learning PHP I found it severely lacking. There was, in my opinion, no benefit to the screen captures showing a PHP statement in several stages of being typed. The purpose could have just as easily been served by a typical code listing and a screen shot of the final output.
The short paragraph that preceded each section was descriptive and covered the basic concepts. This book walks through the concepts of variables, operators, arrays and flow control. It then delves into deeper concepts such as error handling and the object oriented features of PHP 5. Where it includes newer information, it is extremely recent and accurate. It skips mention of a number of deprecated functions and goes right into discussing the new preferred method for a number of things.
The section on database access gives a great beginner’s overall of SQL and how it works. It then discusses the SQLite, MySQL and MySQLi interfaces. One area that I felt was a bit weak was the discussion of the difference between MySQL and MySQLi. The book stressed that MySQLi was newer and supported stored procedures. I would’ve like to have seen more discussion over the differences and why one was preferable to the other.
This brings me to the core failing of the book. It wanted to be both a guide for the absolute beginner and a quick study for PHP programmers transitioning to version 5. The concepts were present well and fairly clearly but there really wasn’t much practical application. The examples showed how to use a statement but didn’t really give an idea of how to string the ideas together to build something useful. I strongly believe that beginning programmers need examples of applications being built. It’s helpful to understand how to approach a web application.
Overall, I’d give this book 3 stars out of 5. It has some good basic material but it fails to bring the concepts together in a way that a new programmer will be able to see how to apply them to building an application. The “visual” style was largely a waste of paper. This book could have simply used code listings and been about half the size or better yet, included an example of building an actual application. While I might recommend this book to a beginner, it would not be my first choice.Our Rating: