I just submitted the last chapter of the third edition of my PHP Advanced book, now titled “PHP Advanced and Object-Oriented Programming: Visual QuickPro Guide.” I still need to perform the rewrites, but as I’m good with page counts (for once), I think the table of contents is fairly solid (shown after the break).
The book is written for intermediate PHP and Web developers, and covers a range of topics to further extend what you know into more real-world, complex situations. I believe it’ll be available in September. Amazon currently has it for $30.81.
My goals for this edition of the book were (in no particular order):
- Emphasize and expand the OOP sections
- Add more content geared towards creating larger, more elaborate, professional Web applications
- Add new content based upon changes in technologies since the last edition (specifically changes in PHP from version 5.2 to 5.4)
- Update outdated content (including replacing old approaches with entirely new ones)
- Removing no longer critical content
- Removing content now discussed in other books of mine
With all that in mind, the final Table of Contents is posted below. Sections that are new or have new content added are in green. Note that everything has been touched to some degree, whether it’s a matter of switching to HTML5 (which the book does use), clearing up things that weren’t clear enough, and so forth. There are also additional concepts discussed in sidebars that are not reflected in this table of contents.
- Chapter 1: Advanced PHP Techniques
- Multidimensional Arrays
- Advanced Function Definitions
- The Heredoc Syntax
- Using printf() and sprintf()
- Chapter 2: Developing Web Applications
- Modularizing a Web Site
- Improved SEO with mod_rewrite
- Affecting the Browser Cache
- Chapter 3: Advanced Database Concepts
- Storing Sessions in a Database
- Working with U.S. Zip Codes
- Creating Stored Functions
- Displaying Results Horizontally
- Chapter 4: Basic Object-Oriented Programming
- OOP Theory
- Defining a Class
- Creating an Object
- The $this Attribute
- Creating Constructors
- Creating Destructors
- Designing Classes with UML
- Better Documentation with phpDocumentor
- Chapter 5: Advanced OOP
- Advanced Theories
- Inheriting Classes
- Inheriting Constructors and Destructors
- Overriding Methods
- Access Control
- Using the Scope Resolution Operator
- Creating Static Members
- Chapter 6: More Advanced OOP
- Abstract Classes and Methods
- Interfaces
- Traits
- Type Hinting
- Namespaces
- Chapter 7: Design Patterns
- Understanding Design Patterns
- The Singleton Pattern
- The Factory Pattern
- The Composite Pattern
- The Strategy Pattern
- Chapter 8: Using Existing Classes
- Catching Exceptions
- Extending the Exception Class
- Using PDO
- Using the Standard PHP Library
- Chapter 9: Example–CMS with OOP
- Identifying the Goals
- Creating the Database
- Making the Template
- Writing a Utilities File
- Creating the Error View File
- Defining the Classes
- Creating the Home Page
- Viewing a Page
- Using HTML_QuickForm2
- Logging Out
- Adding Pages
- Chapter 10: Networking with PHP
- Accessing Other Web Sites
- Working with Sockets
- Performing IP Geolocation
- Using cURL
- Creating Web Services
- Chapter 11: PHP and the Server
- Compressing Files
- Establishing a cron
- Using MCrypt
- Chapter 12: PHP’s Command-Line Interface
- Testing Your Installation
- Executing Bits of Code
- Interactive PHP CLI
- Creating a Command-Line Script
- Running a Command-Line Script
- Working with Command-Line Arguments
- Taking Input
- Using the Built-in Server
- Chapter 13: XML and PHP
- What Is XML?
- XML Syntax
- Attributes, Empty Elements, and Entities
- Defining XML Schemas
- Parsing XML
- Creating an RSS Feed
- Chapter 14: Debugging, Testing, and Performance
- Debugging Tools
- Unit Testing
- Profiling Scripts
- Improving Performance