Programming PHP continues to be an excellent book for any beginning or intermediate PHP developer. Seasoned developers will certainly find plenty as well–I’m happy to say I found plenty of great “oh, cool!” moments reading through it. As this title is now in it’s third edition, it is incredibly polished and beautifully structured. In short, a perfect book for any PHP developer’s library.
Right from the start, the authors assure PHP was created for web development, and continues to be a powerful tool for constructing your latest ideas. The tone is generally pragmatic, and doesn’t go wandering off into some advanced topic before you are ready. The first couple of chapters are about getting you hooked…showing new developers how easy it is to get started with the language. From there, they go into writing your own functions and diving into string manipulation.
PHP is rarely developed in a vacuum away from all of the other libraries, frameworks, micro-frameworks and whatnot that make it such an effective platform. However, to avoid over complicating the topics, Programming PHP generally stays true to discussing “vanilla php” until you get into the later chapters.
The section of the Strings chapter on using regular expressions is easily worth the price of the book on it’s own, but they smartly introduce you to the more traditional string processing techniques first.
The chapters on Objects and Arrays are equally powerful, drawing on the previous chapters and going into just enough conceptual and concrete detail to be highly effective.
At this point, you are going to have a very rich understanding of the language, but haven’t seen much of how to actually build a web application in a while. So, they take a chapter to do just–explaining exactly how you will can use html, forms and sessions to get data to and from your users. Finally, they give a taste of the many types of database engines php supports directly including PDO, mysqli and even MongoDB! So just half way though the book, and you have everything you need to truly be effective at building web applications.
From there, look forward to some fun with generating graphics and PDFs Heck, there is even a 13 line script that converts images into color ascii art!
All PHP developers should read and understand the chapters on Security and Application Techniques–if just to keep these concepts in their minds while coding. Developers who have been using PHP since the early days may find the sections on Web Services and Dates and Times particularly useful.
The book includes a giant appendix — essentially a concise manual for the language. While many of us probably use the online docs, I remember this section being particularly useful when I was learning PHP from the first edition of this book over a decade ago.
Web development is a very large and constantly evolving field. This book doesn’t try to make points diving into HTML 5, CSS 3 or writing complicated map-reduce functions in MongoDB–nor should it. I would have liked to see a chapter on PHPUnit or any of the PHP QA tools–even if it replaced the chapter on fpdf. Also, the Application Techniques showed how to build a simple template engine to introduce the concept–I would have liked to seen a simple MVC pattern demonstrated as well.
Regardless, the authors have done an amazing job of refreshing this iconic reference for the PHP language. I highly recommend it to anyone looking to learn more about PHP.