Какой класс использовать при throw + try/catch для вывода простых алертов юзеру?
==================================================================================

 Что-то не соответствует условию - кидаю исключение с текстом, в try/catch поймал и вывел юзеру красным.  

  

А вот сильно ли влияет, какой подкласс использовать для выброса, там их много разных: Error, Exception, DomainException и т.д.  

  

Существует ли разница и что (какой-то один класс) мне использовать просто для выброса сообщения? 

* **Exception** — это базовый класс для всех исключений в PHP 5 и базовый класс для всех пользовательских исключений в PHP 7.
* **Error** - базовый класс для всех внутренних ошибок PHP.

  

Все пользовательские исключения наследуются от базового Exeption.  

  

Если вам нужно просто выбросить сообщение **о любом пользовательском исключении**, то используйте Exeption. А если хотите обработать какой-то **особенный тип исключения**, например, доменный, то используйте DomainException в try catch и показывайте ошибки доменных исключений. 

 Какой класс используете вы в собственном коде от try до catch - по большому счету, неважно.  

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

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

  

То есть для надежности проше всего завести свой собственный класс, и ловить его отдельно от системных ошибок.  

Которые, как выше уже сказали, ни при каких обстоятельствах не должны выводиться на екран на боевом сайте.