При выполнении большого количества проверок, образуется много условий if-else. Например:
if(условие) {
// ...
} elseif(условие) {
// ...
} else {
// Всё хорошо, идем дальше
if(условие) {
// ...
} else {
// Всё хорошо, идем дальше
// ...
}
}
Можно ли это как-то сократить?
Например, если бы можно было выходить из блока if, можно было бы не писать else. Но вроде бы оператор break такого не позволяет.
Подскажите, что можно сделать?
Вынесите ваш блок проверок в отдельную функцию и используйте return
Или поднимайте исключения
Не знаю, как отнесутся к этому адепты правильного кода на php, но можно использовать ... цикл:
foreach([1] as $_not_used) {
if(условие) {
...
if(условие) {
break;
}
....
}
if($a==4) { break; }
}
Кроме того, если условия подходящие, возможно использование конструкции switch. А так же вложенных конструкций циклов и switch с указанием оператору break количества уровней вложенности, из которого выходить.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей