Exception vs ErrorException

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
kukuruku
Сообщения: 1318
Зарегистрирован: 2011.02.14, 11:36

Exception vs ErrorException

Сообщение kukuruku »

Код: Выделить всё

use yii\base\ErrorException;
use yii\base\Exception;
class e1 extends Exception
{
    protected $message='e1';
}
class e2 extends ErrorException
{
    protected $message='e2';
}

$e1=new e1;
var_dump($e1->getMessage());//выведет e1
$e2=new e2;
var_dump($e2->getMessage()); //пусто
почему так работает? что правильнее использовать?
вариант new e2('текст') работает но интересует сообщение по умолчанию
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Exception vs ErrorException

Сообщение skynin »

Вероятно потому что ErrorException - особое исключение, требующее задания кода ошибки, severity и еще чего-нибудь

В пользовательском коде его использовать как базовый класс не стоит
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
kukuruku
Сообщения: 1318
Зарегистрирован: 2011.02.14, 11:36

Re: Exception vs ErrorException

Сообщение kukuruku »

использовать yii\base\Exception для кидания исключений и для создания своих типов?
skynin
Сообщения: 400
Зарегистрирован: 2017.12.12, 10:09

Re: Exception vs ErrorException

Сообщение skynin »

kukuruku писал(а): 2020.06.25, 09:13 использовать yii\base\Exception для кидания исключений и для создания своих типов?
ну да.

мало того, по опыту, нет смысла плодить свои типы исключений :)

Пока не проектируете супер бупер архитектуру, даже одного не нужно, используйте те что есть.
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
Ответить