PHP使用范围回显数组的值

时间:2013-04-11 15:48:01

标签: php multidimensional-array

我还在学习PHP并且有一些奇怪的项目,我还没有找到答案。我有一个多维范围的数组,我需要只回显第一个&的数值。第三组范围但不是第二组。我很难找到一种方法来回应范围值本身。到目前为止,这是我的代码:

$array = array(
    1=>range(1,4),
    2=>range(1,4),
    3=>range(1,4)
);

foreach(range(1,4) as $x)
{

    echo $x;
}

现在我知道我的foreach循环甚至没有引用我的$数组,因此问题#1但是我似乎找不到在循环中引用$数组并让它遍历值的方法。然后我需要弄清楚如何做第1组和第1组来自$ array的3个。任何帮助将不胜感激!

感谢。

5 个答案:

答案 0 :(得分:1)

由于您不想在第二个索引上显示范围,您可以尝试

<?php

$array = array(
    1=>range(1,4),
    2=>range(1,4),
    3=>range(1,4)
);

foreach($array as $i=>$range)
{
if($i!=2)
{
    foreach($range as $value)
    {
    echo $value;
    }
}
}

?>

注意:将变量命名为与语言对象相同并不是很酷。 $array实际上并不是一个明智的名称,但是由于你以这种方式命名,我没有改变它以避免混淆

答案 1 :(得分:0)

你想这样做吗?

foreach ($array as $item) {
    echo $item;
}

答案 2 :(得分:0)

您可以使用print_r($ array)或var_dump($ array)。 第二个更好,因为它构造输出,但如果数组很大 - 它将不会显示所有内容。在这种情况下使用第一个 - 它将“回显”整个数组,但是在一行中,结果不易读取。

答案 3 :(得分:0)

这是一个解决方案:

$array = array(
1=>range(1,4),
2=>range(1,4),
3=>range(1,4)
);
   $i=0;

   foreach($array as $y)
   { $i++;
          echo "<br/>";

     if($i!=0){ foreach($y as $x)
       {
           echo $x;
       }
                      }
   }

答案 4 :(得分:0)

范围只是一个索引数组,所以由您决定如何表示它,您可能想要打印第一个和最后一个索引:

function print_range($range)
{
    echo $range[0] . " .. " . $range[count($range) - 1] . "\n";
}

要选择第一个和第三个范围,请明确引用它们:

print_range($array[1]);
print_range($array[3]);