Хранить исключения в моем веб-приложении? - PullRequest
1 голос
/ 10 августа 2011

До недавнего времени я делал, как показано ниже, для создания и выдачи пользовательских исключений:

Файл: Myclass.php:

namespace myapp\libraries;

class myclass {

    setEmail($email) {
        if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
             throw new myClassException("Email not valid");
        }
    }

}

class myClassException extends \Exception {}

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

Вопрос: Что говорят текущие соглашения PHP и здравый смысл?

Вот решения, о которых я могу подумать:

  1. Продолжайте объявлять пользовательские исключения сразу после класса, который его вызовет / бросит.
  2. Храните все пользовательские исключения в общем файле, который называется customExceptions.php.
  3. Хранить все пользовательские исключения в отдельном файле, названном в честь его исключения, myClassException.php, в каталоге с именем /exceptions.

1 Ответ

0 голосов
/ 10 августа 2011

Храните все классы отдельно, один класс - один файл. Имя класса также должно быть именем содержащего файла (дословно, с учетом регистра).
Используйте пространства имен в формате «vendor / application / ...» - это ОЧЕНЬ удобная вещь, обещаю.
Подробнее об этом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...