如何在php中使用循环

时间:2016-04-22 19:31:21

标签: php arrays loops

我的$数组有32个值,我想使用循环,但我不知道。

if ( $array[0]  > 1)
{
    echo $array[0];
    unset($array[0]);
}

else if ( $array[1]  > 1)
{
    echo $array[1];
    unset($array[1]);
}

else if ( $array[2]  > 1)
{
    echo $array[2];
    unset($array[2]);
}
else
{
    echo  "<a href=' ".$_SERVER['PHP_SELF']."?month=".$monthstring."&day=".$daystring."&year=".$year." '>".$i." </a></td>";
}

3 个答案:

答案 0 :(得分:0)

我想这样的事情

foreach($array as $index => $value)
{
    if ($value > 1)
    {
        echo $value;
        unset($array[$index]);
    }
    else
    {
        echo  '<a href="', $_SERVER['PHP_SELF'], '?month=', $monthstring, '&day=', $daystring, '&year=', $year, '>', $index, '</a>';
    }
}

答案 1 :(得分:0)

其他是完整的循环之后,我认为它应该是这样的:

$found = false;
foreach($array as $index => $value)
{
    if ($value > 1)
    {
        echo $value;
        unset($array[$index]);
        $found = true;
        break;
    }
}
if(!$found) { 
    echo  '<a href="', $_SERVER['PHP_SELF'], '?month=', $monthstring, '&day=', $daystring, '&year=', $year, '>', $index, '</a>';
}

答案 2 :(得分:0)

使用foreach循环,并在取消设置大于1的第一个元素后将其中断。使用变量来跟踪是否有任何内容被删除,因此您知道是否在循环后回显锚点。

$deleted = false;
foreach ($array as $index => $value) {
    if ($value > 1) {
        echo $value;
        unset($array[$value]);
        $deleted = true;
        break;
    }
}
if (!$deleted) {
    echo  "<a href=' ".$_SERVER['PHP_SELF']."?month=".$monthstring."&day=".$daystring."&year=".$year." '>".$i." </a></td>";
}