Мне интересно , когда это плохая идея использовать несколько вложенных операторов IF.
например:
function change_password($email, $password, $new_password, $confirm_new_password)
{
if($email && $password && $new_password && $confirm_new_password)
{
if($new_password == $confirm_new_password)
{
if(login($email, $password))
{
if(set_password($email, $new_password))
{
return TRUE;
}
}
}
}
}
Эта функция используется следующим образом:
if(!change_password($email, $password, $new_password, $confirm_new_password)
{
echo 'The form was not filled in correctly!';
exit;
}
Я вызываю все мои функции, как это, и мне интересно, если что-то не так с моим стилем кодирования. У меня возникают сомнения, потому что, если я последую этому дизайну, это означает, что каждая отдельная функция, которую я пишу, будет только с вложенными IF, проверяя, есть ли ошибки на каждом этапе. Это то, что делают другие люди?
Я не вижу много других сценариев, написанных следующим образом: вложенный IF формирует треугольную форму и только имеет желаемый результат в самой середине. Если середина не достигнута, то что-то прищурилось.
Является ли это хорошей функциональной структурой?