【问题标题】:php for loop from array stops after 3 loops来自数组的 php for 循环在 3 次循环后停止
【发布时间】:2013-05-31 11:58:17
【问题描述】:

我有一个看起来像这样的数组。

Array (
    [0] => Array (
        [0] => MDT 2920 P
        [1] => MDT 1210 P
        [2] => MDT 939 P
        [3] => MDT 1760 P
        [4] => PDT 23800 P
    )
    [1] => Array (
        [0] => MDT
        [1] => MDT
        [2] => MDT
        [3] => MDT
        [4] => PDT
    )
    [2] => Array (
        [0] => 2920
        [1] => 1210
        [2] => 939
        [3] => 1760
        [4] => 23800
    )
)

我想遍历 [2] 的第一个键中的数组并回显所有值。

for ($i = 0; $i < count($nt); $i++)
{
    echo $nt[2][$i];
    echo "<br />";
}

这可行,但在三个循环后停止,输出如下所示:

2920
1210
939

我期待——希望如此:

2920
1210
939
1760
23800

我不明白它为什么会停止。谢谢。

【问题讨论】:

    标签: php arrays for-loop echo


    【解决方案1】:
    $number=array(1,2,3,4,5);
    
    foreach($number as $n)
    {   
    echo "value is $n <br>";
    }
    

    【讨论】:

    • 虽然这段代码 sn-p 可以解决问题,但including an explanation 确实有助于提高帖子的质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
    【解决方案2】:

    尝试使用foreach循环:

       foreach ( $array[2] as $value ) {
            echo $value;
            echo "<br />";
        }
    

    【讨论】:

      【解决方案3】:
      for($i = 0; $i < count($nt); $i++) 
      

      是杯子

      你应该使用

      for($i = 0; $i < count($nt[2]); $i++) 
      

      【讨论】:

        【解决方案4】:

        你的问题在这里:

        for($i = 0; $i < count($nt); $i++) 
        

        您正在计算 $nt 的元素(为 3),但您想访问 $nt[2] 的元素(为 5)。因此,您需要将上面的行更改为:

        for($i = 0; $i < count($nt[2]); $i++) 
        

        【讨论】:

          猜你喜欢
          • 2013-02-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-01-11
          • 1970-01-01
          • 1970-01-01
          • 2010-12-16
          • 1970-01-01
          相关资源
          最近更新 更多