Advanced PHP Programming

( 1 )

Overview

Over the past three years PHP has evolved from being a niche language used to add dynamic functionality to small sites to a powerful tool making strong inroads into large-scale, business-critical Web systems.

The rapid maturation of PHP has created a skeptical population of users from more traditional "enterprise" languages who question the readiness and ability of PHP to scale, as well as a large population of PHP developers without formal computer science backgrounds who have ...

See more details below
Paperback
$40.86
BN.com price
(Save 25%)$54.99 List Price
Other sellers (Paperback)
  • All (21) from $1.99   
  • New (10) from $3.98   
  • Used (11) from $1.99   
Advanced PHP Programming

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK
  • NOOK HD/HD+ Tablet
  • NOOK
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac

Want a NOOK? Explore Now

NOOK Book (eBook)
$25.49
BN.com price
(Save 42%)$43.99 List Price

Overview

Over the past three years PHP has evolved from being a niche language used to add dynamic functionality to small sites to a powerful tool making strong inroads into large-scale, business-critical Web systems.

The rapid maturation of PHP has created a skeptical population of users from more traditional "enterprise" languages who question the readiness and ability of PHP to scale, as well as a large population of PHP developers without formal computer science backgrounds who have learned through the hands-on experimentation while developing small and midsize applications in PHP.

While there are many books on learning PHP and developing small applications with it, there is a serious lack of information on "scaling" PHP for large-scale, business-critical systems. Schlossnagle's Advanced PHP Programming fills that void, demonstrating that PHP is ready for enterprise Web applications by showing the reader how to develop PHP-based applications for maximum performance, stability, and extensibility.

Read More Show Less

Editorial Reviews

From Barnes & Noble
The Barnes & Noble Review
PHP 5 is enterprise-ready. It’s fast, scalable, and extensible. It offers a surprisingly powerful object model. But many developers still use it for nothing but simple “glue” scripts. Why not leverage your PHP skills to do a whole lot more -- and make yourself more competitive, too?

Advanced PHP Programming is PHP 5 for serious, large-scale web development -- the stuff introductory PHP books don’t teach. For example, there’s a full section on caching for performance. Techniques for building scalable applications that run across clusters. Detailed coverage of benchmarking and profiling. A full chapter on SOAP and XML-RPC.

Above all, you’ll learn sophisticated PHP problem-solving skills -- and take away plenty of examples to get you rolling. Bill Camarda

Bill Camarda is a consultant, writer, and web/multimedia content developer. His 15 books include Special Edition Using Word 2003 and Upgrading & Fixing Networks for Dummies, Second Edition.

From The Critics
Slashdot.org
George Schlossnagle has written a great book on PHP programming which ought to generate some enthusiasm. But it's not just about PHP5: the book includes great information on everything from coding style to high-level problem-solving. I met George through a friend of mine who works for the Developers Library, and I'm glad to have finally gotten a look at his book. ... Definitely recommended.
Read More Show Less

Product Details

  • ISBN-13: 9780672325618
  • Publisher: Sams
  • Publication date: 2/20/2004
  • Series: Developer's Library Series
  • Pages: 650
  • Sales rank: 1,433,975
  • Product dimensions: 6.50 (w) x 8.90 (h) x 1.40 (d)

Meet the Author

George Schlossnagle is a principal at OmniTI Computer Consulting, a Maryland-based tech company that specializes in high-volume Web and email systems. Before joining OmniTI, he led technical operations at several high-profile community Web sites, where he developed experience managing PHP in very large enterprise environments. He is a frequent contributor to the PHP community and his work can be found in the PHP core, as well as in the PEAR and PECL extension repositories.

Before entering the information technology field, George trained to be a mathematician and served a two-year stint as a teacher in the Peace Corps. His experience has taught him to value an interdisciplinary approach to problem solving that favors root-cause analysis of problems over simply addressing symptoms.

Read More Show Less

Table of Contents

Introduction.

I. IMPLEMENTATION AND DEVELOPMENT METHODOLOGIES.

1. Coding Styles.

Choosing a Style That Is Right for You. Naming Symbols. Avoiding Confusing Code. Documentation. Further Reading.

2. Object-Oriented Programming through Design Patterns.

Introduction to OO Programming. A Brief Introduction to Design Patterns. Overloading. Further Reading.

3. Error Handling.

Handling Errors. Handling External Errors. Exceptions. When to Use Exceptions. Further Reading.

4. Implementing with PHP: Templates and the Web.

Smarty. Writing Your Own Template Solution. Further Reading.

5. Implementing with PHP: Standalone Scripts.

Introduction to the PHP Command-Line Interface (CLI). Handling Input/Output (I/O). Parsing Command-Line Arguments. Creating and Managing Child Processes. Writing Daemons. Combining What You've Learned: Monitoring. Services Further Reading.

6. Unit Testing.

An Introduction to Unit Testing. Writing Inline and Out-of-Line Unit Tests. Additional Features in PHPUnit. Test-Driven Design. Unit Testing in a Web Environment. Further Reading.

7. Managing the Development Environment.

Change Control. Managing Packaging. Further Reading.

8. Designing a Good API.

Design for Refactoring and Extensibility. Defensive Coding. Further Reading.

II. CACHING.

9. External Performance Tunings.

Language-Level Tunings. Cache-Friendly PHP Applications. Content Compression. Further Reading.

10. Data Component Caching.

Caching Issues. Recognizing Cacheable Data Components. Choosing the Right Strategy: Hand-Made or Prefab Classes. Output Buffering. In-Memory Caching. DBM-Based Caching. Shared Memory Caching. Cookie-Based Caching. Integrating Caching into Application Code. Further Reading.

11. Computational Reuse.

Introduction by Example: Fibonacci Sequences. Caching Reused Data Inside a Request. Caching Reused Data Between Requests. Computational Reuse Inside PHP. Further Reading.

III. DISTRIBUTED APPLICATIONS.

12. Interacting with Databases.

Understanding How Databases and Queries Work. Database Access Patterns. Tuning Database Access. Further Reading.

13. User Authentication and Session Security.

Simple Authentication Schemes. Registering Users. Maintaining Authentication: Ensuring That You Are Still Talking to the Same Person. Single Signon. Further Reading.

14. Session Handling.

Client-Side Sessions. Server-Side Sessions.

15. Building a Distributed Environment.

What Is a Cluster? Clustering Design Essentials. Caching in a Distributed Environment. Scaling Databases. Further Reading.

16. RPC: Interacting with Remote Services.

XML-RPC. SOAP. SOAP and XML-RPC Compared. Further Reading.

IV. PERFORMANCE.

17. Application Benchmarks: Testing an Entire Application.

Passive Identification of Bottlenecks. Load Generators. Further Reading.

18. Profiling.

What Is Needed in a PHP Profiler. A Smorgasbord of Profilers. Installing and Using APD. A Tracing Example. Profiling a Larger Application. Spotting General Inefficiencies. Removing Superfluous Functionality. Further Reading.

19. Synthetic Benchmarks: Evaluating Code Blocks and Functions.

Benchmarking Basics. Building a Benchmarking Harness. Benchmarking Examples.

V. EXTENSIBILITY.

20. PHP and Zend Engine Internals.

How the Zend Engine Works: Opcodes and Op Arrays. Variables. Functions. Classes. The PHP Request Life Cycle. Further Reading.

21. Extending PHP: Part I.

Extension Basics. An Example: The Spread Client Wrapper. Further Reading.

22. Extending PHP: Part II.

Implementing Classes. Writing Custom Session Handlers. The Streams API. Further Reading.

23. Writing SAPIs and Extending the Zend Engine.

SAPIs. Modifying and Introspecting the Zend Engine. Homework.

Index.

Read More Show Less

Customer Reviews

Average Rating 5
( 1 )
Rating Distribution

5 Star

(1)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing 1 Customer Reviews
  • Anonymous

    Posted May 22, 2011

    No text was provided for this review.

Sort by: Showing 1 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)