Universal exception handler

Exceptions are especially useful when used in conjunction with code in a try/catch block. Using this construct, however, can be awkward in some situations, making code virtually unreadable. Another consideration is that many classes end up throwing exceptions that you have not anticipated. In such cases, it would be highly desirable to have some sort of fallback exception handler.

How to do it...

  1. First, we define a generic exception handling class, Application\Error\Handler:
    namespace Application\Error;
    class Handler
    {
      // code goes here
    }
  2. We define properties that represents a log file. If the name is not supplied, it is named after the year, month, and day. In the constructor, we use set_exception_handler() to assign the ...

Get PHP 7 Programming Cookbook now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.