Допустим, есть такой условный код:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- class E_InputError extends Exception {}
- class Controller
- {
- function action()
- {
- $model = new Model();
- try {
- $model->storeData($data);
- }
- catch (E_InputError $e) {
- // Ошибка в введенных данных. Выводим сообщение пользователю.
- $this->setMessage($e->getMessage());
- }
- catch (Exception $e) {
- // Фатальная ошибка. (например нет соединения с БД)
- // убиваем скрипт
- }
- $this->setMessage('Сохранено!');
- }
- }
- class Model
- {
- function storeData($data)
- {
- throw new E_InputError('Ошибка во входных данных');
- }
- // ....
- }
- }