0

我想在不同的函数中使用多维数组。所以我将它作为全局变量(数组)。我创建了一个多维数组并将其作为全局变量以在不同的函数中访问。现在我如何使用它从中获取值foreach 循环?这是我的代码

$test=array(
       array(
        "input1"=>"v1",
        "input2"=>"v2"),
        array(
         "input3"=>"v3",
         "input4"=>"v4")
      );

class testing
{
  function testp()
  {
    global $test;
    foreach($test as $key => $value)
    {
      echo $value;
    }
    var_dump($test);
    echo is_array($test);
  }
}

$obj = new testing();
$obj->testp();

我使用 is_array 并var_dump确认它是否是一个数组。一切都很好,它的显示错误抑制被忽略了。现在我怎样才能从中获得价值?

4

3 回答 3

3

它是数组数组,适用于最高阶数组,也可以进一步工作:

foreach($test as $key => $value)
{
   foreach($value as $k => $v){
      echo $v;
   }
}

这将一个接一个地呼应您的值 v1、v2、v3、v4。

于 2013-05-03T10:29:04.300 回答
1

更一般的答案:

public function visitArray($test)
{
  foreach($test as $key=>$value)
  {
    if(is_array($value))
    {
      visitArray($value);
    }
    else
    {
      echo $value;
    }
  }
}

编辑

如果不考虑键,不知道为什么要循环键和值

于 2013-05-03T10:33:30.027 回答
1

访问数组中的数组值的更简单和简单的方法。

foreach($test as $array_value){

    if(is_array($array_value)) {
        foreach ($array_value as $value) {
             echo $value.'<br>';
        }
      }
    }
于 2016-09-04T03:01:27.267 回答