Исключения и ошибки предназначены только для разработчиков (или других приложений, взаимодействующих с вашим приложением)
В php обычной практикой является создание обработчика ошибок (мне нравится превращать ошибки в исключения) и обработчик исключений(для неперехваченных исключений)
В среде разработки вы увидите полное сообщение об исключении и обратный след.
В производственном процессе обработчик превращает исключение в удобное для пользователя сообщение снет чувствительных деталей вообще.Возможно, вы хотите, чтобы они знали, что «что-то пошло не так», и вы хотите, чтобы это сообщение было встроено в тот же макет, который вы используете для остальной части вашего сайта.Попробуйте перейти на любой достойный сайт и сделать что-то не так, например, перейти на несуществующий URL.Вы, вероятно, найдете симпатичную страницу 404 вместо «исключение: URL-адрес не существует» или что-то в этом роде.
Кроме того, вы можете захотеть разные уровни регистрации ошибок в зависимости от среды, в которой вы находитесь.хочу регистрировать все ошибки, предупреждения, информационные сообщения, сообщения об отладке.В производственной среде вы можете захотеть регистрировать только ошибки (и, возможно, предупреждения).
Настройка всего этого может быть очень сложной.Вот почему у нас есть рамки для решения подобных задач.Вам стоит попробовать Symfony 2