Этот вопрос закрыт для ответов, так как повторяет вопрос Выводит не весь результат цикла(PHP), почему?
@jistulamle

Почему цикл виснет при условии(PHP)?

Почему цикл виснет при условии, второй день не могу понять
function seach($y = null, $z = null){

while($x <= $y){
  if($z == 1){
      if($x == 10){
         echo "  [Равно]   ".'<br />';
         $x++;
              
      }
  }else{
              
      echo $x.'<br />';
    $x++;

   } 
  
}
}
seach(10, 1);

Если указать seach(10, 0); отрабатывает нормально, но если указать seach(10, 1); виснит и не отрабатывает как положено. Почему?
  • Вопрос задан
  • 177 просмотров
Решения вопроса 1
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
Для начала инициализируйте $x.
Если $z = 1, а $x != 10 (А оно не равно, потому что начальное значение не задано), то и инкремента $x не будет. Следовательно условие $x <= $y - всегда истино.
Ответ написан
Ответы на вопрос 1
@jistulamle Автор вопроса
Lander Lander , либо я вас не понял, либо плохо объяснил) еще раз
$z - может равняться либо 1(True) или 0(False)
Ну и код подправил
function task($y = null, $z = null){

$x = 1;  
while($x <= $y){
  if($z == 1){
      if($x == 10){
         echo "  [Равно]   ".'<br />';
         $x++;
              
      }
  }else{
              
      echo $x.'<br />';
    $x++;

   } 
  
}
}
task(15, 1);

Но все равно виснит.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы