In this chapter we looked at the life cycle of an error in PHP. We examined the behavior of the default error handler and the ways in which it can be configured to suit the needs of most programs. Twelve distinct error levels were coveredfrom informative, to actionable, and fatal. We also took a look at the concept of user-defined error handlers and intentionally triggered errors.
Through the use of the concepts covered in this chapter, you should be able to design applications that successfully ignore expected errors and safely handle unexpected ones. With careful planning and a solid implementation, your users should never have to see another cryptic system-generated error message again.