从数组数组获取值

时间:2018-10-21 12:03:36

标签: php arrays laravel-5

我有一个数组数组。我试图遍历每个变量并获取值。 这是我用来进入数组的代码,

        $body = json_decode($res->getBody(),true); //gets the whole json and make an array
        $events = $body['results']; // to go one level down and get 'results'
        //var_dump($events);

        foreach ($events as $obj) {
            var_dump($obj); // to go into the array of arrays and print each inside array.
           break;
        }

我需要循环的数组:

array(1) {
  ["events"]=>
  array(43) {
    [0]=>
    array(22) {
      ["item1"]=>
      string(71) "lorem ipsum bla bla"
      ["lorem ipsum bla bla"]=>
      string(21) "lorem ipsum bla bla"
      ["lorem ipsum bla bla"]=>
      string(17) "lorem ipsum bla bla"
      ["lorem ipsum bla bla"]=>
      string(10) "lorem ipsum bla bla"
 }
    [1]=>
    array(22) {
      ["item1"]=>
      string(71) "lorem ipsum bla bla"
      ["lorem ipsum bla bla"]=>
      string(21) "lorem ipsum bla bla"
      ["lorem ipsum bla bla"]=>
      string(17) "lorem ipsum bla bla"
      ["lorem ipsum bla bla"]=>
      string(10) "lorem ipsum bla bla"
}

当我遍历单个项目时数组显示的内容:

它向我展示了完整的阵列

3 个答案:

答案 0 :(得分:2)

我认为您应该尝试使用foreach()来迭代$events 0th 索引,

foreach($events[0]['events'] as $obj) {
    print '<pre>';
    print_r($obj);
    print '</pre>';
}

答案 1 :(得分:0)

如果要遍历$events['events'],则应将其设置为foreach的第一个参数

foreach($events['events'] as $obj) {
    var_dump($obj);
}

答案 2 :(得分:0)

这是我为了以最易懂的方式可视化阵列而制作的功能:

function DebugArray($arr){
    $s='';
    if($arr==null){
        $s .= 'NULL';
        return $s;
    }
    $s .=  '<table border="1">';
    foreach((array)$arr as $k=>$v){
        $s .=  '<tr><td>'.$k.'</td><td>';
        if( is_array($v) ){
            $s .= DebugArray($v);
        }else{
            $s .=  $v;
        }
        $s .=  '</td></tr>';
    }
    $s .=  '</table>';
    return $s;
}

快速查看所有多维数据非常有用 希望对您有帮助