да просто потом прийдется объяснять, почему метод называется именно так и почему в одних случаях случается магия (отображается 404), а в других — обычный поток выполнения
public function fetchRowIfExists($message = 'Данной страницы нет на сайте')
ужасен. Ужасен по нескольким причинам:
1) метод в зависимости от наличия строки возвращает разные типы данных (массив или строку ошибки)
2) логика обработки отсуствия строки в БД перенесена из контроллера в модель
По хорошему достаточно метода fetchRow(), который возвращает либо запись из БД, либо пустой массив (объект?), которй уже в контроллере проверяется на пустоту и выбрасывается соответствующее исключение, которое обработается центральным обработчиком исключений и покажет 404, либо вручную перенаправит на 404
подогревать голубей? О_о
</irony>
сейчас активность повысилась в два раза и составляет ~8 хитов/сек
public function fetchRowIfExists($message = 'Данной страницы нет на сайте')
ужасен. Ужасен по нескольким причинам:
1) метод в зависимости от наличия строки возвращает разные типы данных (массив или строку ошибки)
2) логика обработки отсуствия строки в БД перенесена из контроллера в модель
По хорошему достаточно метода fetchRow(), который возвращает либо запись из БД, либо пустой массив (объект?), которй уже в контроллере проверяется на пустоту и выбрасывается соответствующее исключение, которое обработается центральным обработчиком исключений и покажет 404, либо вручную перенаправит на 404