Я PHP noob, который работает довольно долго с наименьшими задачами. Im пытается создать цикл while, который жив, пока не найдет совпадение, строки, которые должны совпадать, представляют собой две случайные строки из двух массивов. Но моя проблема в том, что цикл while застревает, когда они не соответствуют смыслу, случайные значения не изменяются после извлечения. Я просто не могу обойти его, может кто-то, пожалуйста, помогите мне. Это плохой код, который у меня есть.Сравнение, извлечение и удаление из массива строк PHP
$seed1 = array("kim","Jake","Mac","Pi");
$seed2 = array("Vi","Nik","Nis","Fid");
$teamTemp1 = $seed1[array_rand($seed1)];
$teamTemp2 = $seed2[array_rand($seed2)];
while(true){
if($teamTemp1 == "Kim" && $teamTemp2 != "Nis"){
echo $teamTemp1 ." + ".$teamTemp2;
return false;
}
if($teamTemp1 == "Jake" && $teamTemp2 != "Fid"){
echo $teamTemp1 ." + ".$teamTemp2;
return false;
}
if($teamTemp1 == "Mac" && $teamTemp2 != "Vi"){
echo $teamTemp1 ." + ".$teamTemp2;
return false;
}
if($teamTemp1 == "Pi" && $teamTemp2 != "Fid"){
echo $teamTemp1 ." + ".$teamTemp2;
return false;
}
}
Вы никогда не изменяя значения '$ teamTemp1' и' $ teamTemp2', поэтому цикл никогда не закончится. Вам нужно выполнить эти назначения внутри цикла. – andrewsi