Synopses & Reviews
Fully revised for PHP 5 The authoritative guide to real-world development with the new PHP 5 Brand-new coverage of PHP design patterns, object techniques, and XML Updated coverage of syntax, functions, algorithms, and PHP software engineering Includes 650+ downloadable code examples Co-authored by Zeev Suraski, PHP 5 contributor and Zend Engine 2 co-creator Praise for the third edition: “In the Third Edition of Core PHP Programming, Leon has invited my partner Zeev Suraski to cover the PHP 5 language changes. Leons experience in writing PHP books and Zeevs superior knowledge of PHP 5 and its internals have led to a must-buy book for PHP developers. I hope you enjoy this book and that it accompanies you during the adoption phase of PHP 5.”
—Andi Gutmans, PHP 5 contributor and Zend Engine 2 co-creator The authoritative guide to PHP 5! Master PHP 5, the easy, high-performance solution for enterprise-class Web development!
Core PHP Programming, Third Edition is the authoritative guide to the brand-new PHP 5. Top PHP developer Leon Atkinson and PHP 5 contributor/Zend Engine 2 co-creator Zeev Suraski cover every facet of real-world PHP development, from basic syntax to state-of-the-art design patterns.
Its all here: networking, data structures, regular expressions, math, configuration, graphics, MySQL/PostgreSQL support, XML, algorithms, debugging, and much more. Discover how to build enterprise-class applications that use PHP 5s breakthrough object-oriented features…and leverage the extraordinary Zend Engine 2 performance improvements this books co-author helped to implement. Every Core Series book:
- DEMONSTRATES how to write commercial-quality code
- FEATURES nontrivial programs and examples—no toy code!
- FOCUSES on the features and functions most important to real developers
- PROVIDES objective, unbiased coverage of cutting-edge technologies—no hype!
Core PHP Programming, Third Edition delivers: - Accurate, thorough coverage of PHP 5 syntax, functions, and algorithms
- Step-by-step guidance for PHP 5 database integration and XML development
- Best practices for software design, debugging, and integration
Synopsis
Core PHP Programming, Third Edition is the authoritative guide to the new PHP 5 for experienced developers. Top PHP developer Leon Atkinson and PHP 5 contributor/Zend Engine 2 co-creator Zeev Suraski cover every facet of real-world PHP 5 development, from basic syntax to advanced object-oriented development -- even design patterns! Its all here: networking, data structures, regular expressions, math, configuration, graphics, MySQL/PostgreSQL support, XML, algorithms, debugging, optimization…and 650 downloadable code examples, with a Foreword by PHP 5 contributor and Zend Engine 2 co-creator Andi Gutmans!
About the Author
LEON ATKINSON is a freelance Web developer and architect who has been working with PHP since 1997. He formerly served as chief technologist for Clear Ink in Walnut Creek, CA, where he specialized in designing and implementing complex, PHP-based Web applications that automate business processes. He is author of
Core MySQL. ZEEV SURASKI is co-creator of PHP 5s Zend Engine 2. He also wrote many of PHPs core features, including its abstracted Web server API, thread safety, MySQL support, and output buffering. He co-founded Zend Technologies and currently serves as its chief technology officer.
Table of Contents
Foreword.
Preface.
Acknowledgments.
I. PROGRAMMING WITH PHP. 1. An Introduction to PHP.
The Origins of PHP. PHP Is Better Than Its Alternatives. Interfaces to External Systems. How PHP Works with the Web Server. Hardware and Software Requirements. What a PHP Script Looks Like. Saving Data for Later. Receiving User Input. Choosing Between Alternatives. Repeating Code. 2. Variables, Operators, and Expressions.
A Top-Down View. Data Types. Variables. Constants. Operators. Building Expressions. 3. Control Statements.
The if Statement. The ? Operator. The switch Statement. Loops. exit, die, and return. Exceptions. Declare. 4. Functions.
Declaring a Function. The return Statement. Scope. Static Variables. Arguments. Recursion. Dynamic Function Calls. 5. Arrays.
Single-Dimensional Arrays. Indexing Arrays. Initializing Arrays. Multidimensional Arrays. Casting Arrays. The + Operator. Referencing Arrays Inside Strings. 6. Classes and Objects.
Object-Oriented Programming. The PHP 5 Object Model. Defining a Class. Constructors and Destructors. Cloning. Accessing Properties and Methods. Static Class Members. Access Types. Binding. Abstract Methods and Abstract Classes. User-Level Overloading. Class Autoloading. Object Serialization. Namespaces. The Evolution of the Zend Engine. 7. I/O and Disk Access.
HTTP Connections. Writing to the Browser. Output Buffering. Environment Variables. Getting Input from Forms. Passing Arrays in Forms. Cookies. File Uploads. Reading and Writing to Files. Sessions. The include and require Functions. Don't Trust User Input.
II. FUNCTIONAL REFERENCE. 8. Browser I/O.
Pregenerated Variables. Pregenerated Constants. Sending Text to the Browser. Output Buffering. Session Handling. HTTP Headers. 9. Operating System.
Files. Compressed File Functions. Direct I/O. Debugging. POSIX. Shell Commands. Process Control. 10. Network I/O.
General Network I/O. Sockets. FTP. Curl. SNMP. 11. Data.
Data Types, Constants, and Variables. Arrays. Objects and Classes. User Defined Functions. 12. Encoding and Decoding.
Strings. String Comparison. Encoding and Decoding. Compression. Encryption. Hashing. Spell Checking. Regular Expressions. Character Set Encoding. 13. Math.
Common Math. Random Numbers. Arbitrary-Precision Numbers. 14. Time and Date.
Time and Date. Alternative Calendars. 15. Configuration.
Configuration Directives. Configuration. 16. Images and Graphics.
Analyzing Images. Creating Images. 17. Database.
DBM-Style Database Abstraction. DBX. LDAP. MySQL. ODBC. Oracle. Postgres. Sybase and Microsoft SQL Server. 18. Object Layers.
COM. CORBA. Java. 19. Miscellaneous.
Apache. IMAP. MnoGoSearch. OpenSSL. System V Messages. System V Semaphores. System V Shared Memory. 20. XML.
DOM XML. Expat XML. WDDX.
III. ALGORITHMS. 21. Sorting, Searching, and Random Numbers.
Sorting. Built-In Sorting Functions. Sorting with a Comparison Function. Searching. Indexing. Random Numbers. Random Identifiers. Choosing Banner Ads. 22. Parsing and String Evaluation.
Tokenizing. Regular Expressions. Defining Regular Expressions. Using Regular Expressions in PHP Scripts. 23. Database Integration.
Building HTML Tables from SQL Queries. Tracking Visitors with Session Identifiers. Storing Content in a Database. Database Abstraction Layers. 24. Networks.
HTTP Authentication. Controlling the Browser's Cache. Setting Document Type. Email with Attachments. HTML Email. Verifying an Email Address. 25. Generating Graphics.
Dynamic Buttons. Generating Graphs on the Fly. Bar Graphs. Pie Charts. Stretching Single-Pixel Images.
IV. SOFTWARE ENGINEERING. 26. Integration with HTML.
Sprinkling PHP within an HTML Document. Using PHP to Output All HTML. Separating HTML from PHP. Generating HTML with PHP. 27. Design.
Writing Requirements Specifications. Writing Design Documents. Change Management. Modularization Using include. FreeEnergy. Templates. Application Frameworks. PEAR. URLs Friendly to Search Engines. 28. Efficiency and Debugging.
Optimization. Measuring Performance. Optimize the Slowest Parts. When to Store Content in a Database. Debugging Strategies. Simulating HTTP Connections. Output Buffering. Output Compression. Avoiding eval. Don't Load Extensions Dynamically. Improving Performance of MySQL Queries. Optimizing Disk-Based Sessions. Don't Pass by Reference (or, Don't Trust Your Instincts). Avoid Concatenation of Large Strings. Avoid Serving Large Files with PHP-Enabled Apache. Understanding Persistent Database Connections. Avoid Using exec, Backticks, and system If Possible. Use php.ini-recommended. Don't Use Regular Expressions Unless You Must. Optimizing Loops. IIS Configuration. 29. Design Patterns.
Patterns Defined. Singleton. Factory. Observer. Strategy. A. Escape Sequences.
B. ASCII Codes.
C. Operators.
D. PHP Tags.
E. PHP Compile-Time Configuration.
F. Internet Resources.
G. PHP Style Guide.
INDEX.