This book takes you beyond the PHP basics to the enterprise development practices used by professional programmers. Updated for PHP 5.3 with new sections on closures, namespaces, and continuous integration, this edition will teach you about object features such as abstract classes, reflection, interfaces, and error handling. Youll also discover object tools to help you learn more about your classes, objects, and methods.
Then youll move into design patterns and the principles that make patterns powerful. Youll learn both classic design patterns and enterprise and database patterns with easy-to-follow examples.
Finally, youll discover how to put it all into practice to help turn great code into successful projects. Youll learn how to manage multiple developers with Subversion, and how to build and install using Phing and PEAR. Youll also learn strategies for automated testing and building, including continuous integration.
Taken together, these three elementsobject fundamentals, design principles, and best practiceswill help you develop elegant and rock-solid systems.
This book is suitable for anyone with at least a basic knowledge of PHP who wants to use its object-oriented features in their projects.
Those who already know their interfaces from their abstracts may well still find it hard to use these features in their projects. These users will benefit from the books emphasis on design. They will learn how to choose and combine the participants of a system, how to read design patterns, and how to use them in their code.
Finally, this book is for PHP coders who want to learn about the practices and tools (version control, testing, continuous integration, etc.) that can make projects safe, elegant, and stable.
Matt Zandstra has worked as a web programmer, consultant, and writer for nearly two decades.
He is the author of SAMS Teach Yourself PHP in 24 Hours (three editions) and a contributor to DHTML Unleashed. He has written articles for Linux Magazine, Zend.com, IBM DeveloperWorks, and php|architect Magazine, among others.
Matt works as a consultant advising companies on their architectures and system management, and also develops systems primarily with PHP, and Java.
Matt also writes fiction.