Точка возврата функции возврата php

Вопрос в том, как выйти из функции из вызова вложенной функции? Другими словами:

function action() {
// some working code
KillingFunction();
// code, that will not execute
}

В псевдокоде функция может выглядеть так:

function KillingFunction() {
return return;
}

Конечно я могу сделать:

function KillingFunction() {
die();
}

Но в такой ситуации весь код, который идет ниже action (), будет мертвым.

Есть ли какой-то лайфхак для такой ситуации?

0

Решение

Просто проверьте возвращаемое значение внутренней функции:

function main($terminate) {
if (dieFunction($terminate)) {
return false;
}

echo "Not dead too!";
return true;
}

function dieFunction($terminate = true) {
if ($terminate) {
return false;
}

echo "I'm not dead!";
return true;
}

main(true); // no output;
main(false); // "I'm not dead!Not dead too!"

Вы можете применить другую логику для возвращаемых значений.

3

Другие решения

Вы можете выйти из функции, используя return:

function action() {
// some working code
return 0;
// code, that will not execute
}
0

По вопросам рекламы [email protected]