如何访问Laravel中嵌套数组内的对象

时间:2020-05-23 06:51:28

标签: php laravel

我是laravel的新手。我有一个名为data的数组,它以嵌套数组的形式获取数据。其结构如下所示。

array:1 [▼
  0 => array:2 [▼
    0 => {#3 ▼
      +"id": "8"
      +"title": "Accounting"
      +"type": {
               +"id": "18"
                +"title": "BookKeeping"
           }
}
    1 => {#3 ▼
      +"id": "10"
      +"title": "Accounting"
      +"type": {
               +"id": "20"
                +"title": "Balancesheet"}
}
]
]

这是我以嵌套数组形式获取的数据。我需要找到一个最大ID,即10,以便我可以根据最大ID获得关联的类型标题。我通过使用数组帮助器和foreach循环以多种方式进行尝试,但未能成功。感谢任何帮助和支持。希望获得积极的代表

1 个答案:

答案 0 :(得分:0)

您可以使用foreach。

$array = <your array variable>;
$max = 0;
foreach($array as $value) if($value['id'] > $max) $max = $value['id'];

或者如果您想获取此变量的键

$array = <your array variable>;
$max = 0;
foreach($array as $key => $value) if($value['id'] > $max) $max = $key;

或者如果您的数组按升序排列,您可以像这样获取最后一个元素的ID:

 $array = <your array variable>;
 $max = array_pop($array)['id'];

注意:但是,如果您使用array_pop,则会丢失最后一个元素-https://www.php.net/manual/en/function.array-pop.php 并且有办法不输

 $array = <your array variable>;
 $max = end($array)['id'];