在多维数组中查找具有 'SELECTED' 值的数组

Find Array With 'SELECTED' Value Inside Multidimensional Array

我有一个非常大的 JSON 文件,我已将其转换为数组。您在下面看到的代码是

的结果
var_dump($array['talents'])

(对于那些想知道的人,是的,这是我尝试使用暴雪娱乐的 API)

也许我只是错过了在 PHP 学校的那一天,但我似乎不记得或想不出如何在这些更深的数组中获取值。也许更重要的是,请注意两个 'spec' 字段 - 其中一个的值为 'SELECTED: BOOLEAN TRUE',而另一个则没有。基本上,我需要数组中具有该 SELECTED 值的 NAME 字段。

老实说,虽然我很喜欢在PHP工作,但这种多层次的思考目前有点超出我的能力范围,我需要更多的经验。与此同时,关于如何获得我需要的价值,任何人都可以给我一些提示、指示或直接回答吗?

非常感谢您的宝贵时间!

array (size=2)
  0 => 
    array (size=6)
      'talents' => 
        array (size=6)
          0 => 
            array (size=3)
              ...
          1 => 
            array (size=3)
              ...
          2 => 
            array (size=3)
              ...
          3 => 
            array (size=3)
              ...
          4 => 
            array (size=3)
              ...
          5 => 
            array (size=3)
              ...
      'glyphs' => 
        array (size=2)
          'major' => 
            array (size=0)
              ...
          'minor' => 
            array (size=1)
              ...
      'spec' => 
        array (size=6)
          'name' => string 'Frost' (length=5)
          'role' => string 'DPS' (length=3)
          'backgroundImage' => string 'bg-mage-frost' (length=13)
          'icon' => string 'spell_frost_frostbolt02' (length=23)
          'description' => string 'Freezes enemies in their tracks and shatters them with Frost magic.' (length=67)
          'order' => int 2
      'calcTalent' => string '120021.' (length=7)
      'calcSpec' => string 'b' (length=1)
      'calcGlyph' => string 'O' (length=1)
  1 => 
    array (size=7)
      'selected' => boolean true
      'talents' => 
        array (size=6)
          0 => 
            array (size=3)
              ...
          1 => 
            array (size=3)
              ...
          2 => 
            array (size=3)
              ...
          3 => 
            array (size=3)
              ...
          4 => 
            array (size=3)
              ...
          5 => 
            array (size=3)
              ...
      'glyphs' => 
        array (size=2)
          'major' => 
            array (size=0)
              ...
          'minor' => 
            array (size=0)
              ...
      'spec' => 
        array (size=6)
          'name' => string 'Fire' (length=4)
          'role' => string 'DPS' (length=3)
          'backgroundImage' => string 'bg-mage-fire' (length=12)
          'icon' => string 'spell_fire_firebolt02' (length=21)
          'description' => string 'Ignite enemies with balls of fire and combustive flames.' (length=56)
          'order' => int 1
      'calcTalent' => string '122012.' (length=7)
      'calcSpec' => string 'Z' (length=1)
      'calcGlyph' => string '' (length=0)

应该是

print_r($array['talents'][0]);
print_r($array['glyphs']['major']);