In this chapter, you explored the implementation of one of the oldest features in the PHP language, and arguably the greatest obstacle to PHP's otherwise robust portability. With every new INI setting available, the obstacles to writing code that can be run anywhere grow more and more complex. Use these features with discretion and extension will be evermore useful; use them carelessly and its behavior from system to system may become too unpredictable to maintain.
In the next three chapters, you'll delve into the streams API, beginning with use and progressing through the implementation layers into stream and wrapper operations, contexts, and filters.
The PHP Life Cycle
Variables from the Inside Out
Setting Up a Build Environment
Your First Extension
Working with Arrays and HashTables
The Resource Data Type
Startup, Shutdown, and a Few Points in Between
Diverting the Stream
Configuration and Linking
Setting Up a Host Environment
Appendix A. A Zend API Reference
Appendix B. PHPAPI
Appendix C. Extending and Embedding Cookbook
Appendix D. Additional Resources