PHP:while循环是无限的
<?php
$animals = array('pig', 'chicken', 'cow', 'snake');
$i = 0;
while ($i < 10)
{
echo "<li>$animals[$i]</li>";
}
?>
我只是想看看在列表项.. 的猪,鸡,牛,蛇,而是发生什么它只是循环字猪无限......PHP:while循环是无限的
您不添加增量$i
。您可以通过在while
循环中添加$i++
将增量添加到$i
。
<?php
$animals = array('pig', 'chicken', 'cow', 'snake');
$i = 0;
while ($i < 10)
{
if (isset($animals[$i]))
{
echo "<li>$animals[$i]</li>";
}
$i++
}
?>
你可以做到这一点,而不使用$ i ++? –
以下代码检查@Sunny是否发布了代码,而没有。在不改变$ i变量的情况下,不可能打破循环。 –
这应该使用$i++
循环访问阵列,将$i
变量加1。
<?php
$animals = array('pig', 'chicken', 'cow', 'snake');
$i = 0;
while ($i < 4) {
echo "<li>$animals[$i]</li>";
$i++;
}
?>
不要只是发布代码,告诉我们你改变和改进了什么。 –
如果没有If语句,你可以这样做吗?我的意思是只使用while。 –
只要你忽略PHP错误... –
我已经添加了$ i ++;在循环中每次增加$ i的值一次,所以我们能够显示数组中的每个元素,也可以在初始时查找数组的长度,以避免出现数组越界问题。
<?php
$animals = array('pig', 'chicken', 'cow', 'snake');
$i = 0;
$len = count($animals);
while ($i < $len)
{
echo "<li>$animals[$i]</li>";
$i++;
}
?>
最初计算数组的长度,然后根据长度迭代循环。
不要只是发布代码,告诉我们你改变和改进了什么。 –
您还可以使用的foreach做到这一点
$animals = array('pig', 'chicken', 'cow', 'snake');
foreach($animals as $animal)
echo "<li>{$animal}</li>";
<?php
$animals = array('pig', 'chicken', 'cow', 'snake');
$i = 0;
$max = sizeof($animals);
while ($i < max) {
echo "<li>$animals[$i]</li>";
i++;
}
?>
我喜欢while循环,所以这里是一个多为混! :)
<?php
$animals = array('pig', 'chicken', 'cow', 'snake');
while ($animal = next($animals)) {
echo "<li>$animal[$i]</li>";
}
?>
这款采用next()得到阵列的每一个值,这个时候它获取到阵列终止while
循环结束返回false。你并不需要控制使用$i
得到数组的元素,如果你的元素存在
你不需要额外if
报表内循环检查你有没有递增$i
值,因此它总是$i = 0;
所以总是在10以下。
增加$i++
增加它以避免这种情况,但是由于这个代码会得到另一个新问题,因为数组只有3个元素,并且在while循环中使用了10。
<?php
$animals = array('pig', 'chicken', 'cow', 'snake');
$i = 0;
while ($i < 10)
{
echo "<li>$animals[$i]</li>";
$i++;
}
?>
$ i ++;缺少 –
哇,真的需要4个完全相同的答案吗? –
正如@AnkurTiwari所指出的那样,'$ i ++;'缺失,您应该修改循环语句为'while($ i
DDPWNAGE