@Alk90
php, mysql, jquery, css, html, api

Как правильно создать и хранить классы собственных исключения?

Всем привет! Я постоянно использую в классах собственные исключения. Например класс комментариев должен выбрасывать исключение "CommentException", а класс добавления постов "AddPostException", для того, чтобы не останавливать выполнение всего скрипта используя просто \Exception, потому что он используется в точке входа, для обработки и отдачи всех ошибок.

Поэтому приходится создавать пустые подклассы CommentException, AddPostException:
class CommentException extends \Exception{};
class AddPostException extends \Exception{};

Где обычно создаются эти подклассы? В самом файле класса комментариев или класса добавления поста или может создается какой-то отдельный файл, который хранит в себе все вот такие пустые исключения и подключается в точке входа, или эти исключения имеют собственный файл, который вызывается с помощью автозагрузки при вызове?

Как решить эту проблему постоянно создаваемых пустых классов расширяющих Exception только для того, чтобы дать понять catch, какое исключение ловить сейчас?
  • Вопрос задан
  • 223 просмотра
Решения вопроса 2
dmitriylanets
@dmitriylanets
веб-разработчик
Comment/Exceptions/CommentException.php
Comment/Commands/AddComment.php
Post/Exceptions/AddPostException.php
Post/Commands/AddPost.php
-в случае если вы делите по доменам функционал
в любом случае это отдельный каталог Exceptions и отдельный класс
Ответ написан
Комментировать
t-alexashka
@t-alexashka
Сразу пишу legacy код
Обычно они создаются в соотв. с политикой неймспейсов, отдельными файлами, даже если само исключение пустое.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы