Использует интерфейс, похожий на коллекции...
Может сейчас тебе кажется, что потом они понадобятся.
Поверь, в 8 из 10 случаев не понадобятся (цифра с потолка).
Вместо того чтобы выявлять требования, ты тратишь время на их выдумывание, и хорошо если угадаешь.
Согласен (но не основной). Именно поэтому я предлагаю создавать Exception-ы под реальные требования проекта, а не под себя любимого.
Стек трейс никто не отменял. Мы ведь про php говорим, да?
Ты же сообщение об ошибке то туда положишь? throw new FileException("Нет доступа к файлу");
У тебя же есть текстовый редактор который найдет все "new FileException", да?
Че тут аццкого?
Зачем вам AccessFileException?
Если вы после этой ошибки программно выставляете нужные права - то ок.
Если вы просто выводите сообщение - то зачем?
FastCGI - это когда веб-сервер перезапускает обработчик - в рамках темы - php каждый раз, как только пришел запрос на выполнение скрипта.
С другой оперы: это синхронная модель. Там же и про блокирование процесса обработчика на время отклика от того же FastCGI, например, или прокси и т.д.