我的目标是在文本框中放入一些数字文本,例如,如果我输入“3”,它就会出现:
你好1
你好2
你好3
我的问题是它一直持续到循环完全完成(好74次),并且不遵守输入的值,并停在3或我输入的某个数字。
<div class="Container">
<h2>Hello Page</h2><hr>
<form>
<p>Enter a number:</p>
<input type="text" name="number">
<input type="submit" value="Enter">
</form>
<?php
$digit = $_GET['number'];
if (empty($digit))
$digit= "";
elseif (!empty($digit)) {
for ($digit= 1; $digit< 75; $digit++) {
if ($digit== TRUE) {
echo 'Hello ' . $digit. '<br>';
} elseif ($digit== $digit) {
break;
}
}
}
?>
</div>
答案 0 :(得分:0)
方法1。
for($i=0;$i<$_GET['number'];$i++) {
echo "Hello {$i}<br/>";
}
方法2。
$i = 0;
while($i < $_GET['number'])
echo "Hello {$i}<br/>";
$i++;
}
方法3。
$i = 0;
while(true) {
if($i >= $_GET['number']) break;
echo "Hello {$i}<br/>";
$i++;
}
方法4。
do {
echo "Hello {$i}<br/>";
$i++;
} while($i < $_GET['number']);
答案 1 :(得分:0)
主要问题是您使用$ digit作为接收表单输入的变量,并将AND作为循环中的incrementor变量。所以基本上你要覆盖你输入的值。所以基本上你需要使用2个变量,而不是1个。
答案 2 :(得分:0)
您的$ digit变量是最大值,以这种方式使用它。 在此
中更改for循环for ($x= 1; $x <= $digit; $x++) {
echo 'Hello ' . $x. '<br />';
}
然后你会得到你想要的东西。