[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Возвращаемый результат
abdula81
Мужики, не могу разобраться. Дайте совет.
Метод может вернуть true, false, а может и сообщение выдать.
Долго думал и решил (хоть и туповато) сделать, если всё норм, то выдавать 'succesfull', если что-то не так пошло, то само сообщение об ошибке.

Причем во вьюхах это выглядит еще глупее по моему.

$result = $product->changeName(1, 'Новое название');
if($result == 'succesfull'){
echo 'Всё норм';
}else{
echo $result;
}

Можно как-то более грамотно сделать всё?
Invis1ble
Например, сделать класс ChangeNameResult и возвращать его инстанс.

interface ResultInterface
{
public function hasError(): bool;
public function getError(): ?ErrorInterface;
}


Либо возвращать строго bool и кидать исключения в случае непредвиденной ошибки.

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Michael
Возвращать статус коды рассматривают как запахи кода.

Можешь у дяди Боба в его Чистом коде такие мелочи подглядывать, например эта у него на стр 71 - Используйте исключения вместо возвращения кодов ошибок

_____________
There never was a struggle in the soul of a good man that was not hard
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.