Должен ли мой метод генерировать исключение? - PullRequest
0 голосов
/ 26 августа 2009

Мое веб-приложение на PHP разделено на модули, и я использую модель данных и шаблоны отображения данных. Мои методы отображения являются статическими, и они существуют специально для взаимодействия с базой данных.

У меня есть следующий метод:

ModuleMapper::getRecordCountByModuleIdAndSiteId($moduleId, $siteId)

Этот метод предназначен только для набора модулей (у меня есть веская причина). Было бы разумно выдать исключение, если этот метод вызывается для модуля вне этого списка (например, «Невозможно получить счетчик записей для этого модуля».)

try {
  $recordCount = ModuleMapper::getRecordCountByModuleIdAndSiteId($moduleId, $siteId);
}
catch (Exception $e) {
  // handle exception
}

Другой вариант - просто вернуть 0.

1 Ответ

1 голос
/ 26 августа 2009

Зависит от того, как вы действительно хотите обрабатывать ошибки. Я использую Zend Framework, который автоматически перехватывает исключения и перенаправляет их в контроллер ошибок для удобного отображения и регистрации. Очевидно, что этот метод убьет обработку, если вы не уловите ее явно. Но это упрощает отображение ошибок и ведение журнала.

Вы также можете вернуть 0 и выполнить оператор if , чтобы отобразить встроенное сообщение, или перехватить ошибку и также отобразить встроенное сообщение.

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