@lyrion

Почему вывод пустой?

Господа, видимо в упор не вижу очевидную ошибку. Помогите:
function quest($i){
	$nVal = 0;
	$bTrigger = false;
	
	if(!$i){
		$bTrigger = false;
	} else {
		$bTrigger = true;
	}
	
	if(!$bTrigger){
		quest(++$i);
	} else {
		return $i;
	}
}

$result = quest(0);
echo $result; //Пустой вывод!

Должна выводиться 1, но выводится ничего. Что не так!?
  • Вопрос задан
  • 88 просмотров
Решения вопроса 1
Zoominger
@Zoominger
System Integrator
Должна выводиться 1

С чего бы? Вот это условие:
if(!$bTrigger){
    quest(++$i);

срабатывает, а там нет никакого возврата. Функция не возвращает значения. Вот и всё.
Трассировка - наше всё.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
s_panteleev
@s_panteleev
25 yo, Yaroslavl
if(!$bTrigger){
    return quest(++$i); // а так ?
  } else {
    return $i;
  }
Ответ написан
@Roma741
ты что-то непонятное делаешь у тебя срабатывает $bTrigger = false; потом quest(++$i); а return только если else функция ничего не возвращает
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
26 апр. 2024, в 10:43
1500 руб./за проект
26 апр. 2024, в 10:21
1200 руб./в час