从数组中获取特定键

Get specific key from an array

这是我在 Symfony 会话中输入的内容

$this->session->set('teams', [
  'team_1' => ['MyTeamNameA' => ['player-1' => $safe['team-1-player-1'], 'player-2' => $safe['team-1-player-2'], 'player-3' => $safe['team-1-player-3'], 'player-4' => $safe['team-1-player-4'], 'points' => 0]],
  'team_2' => ['MyTeamNameB' => ['player-1' => $safe['team-2-player-1'], 'player-2' => $safe['team-2-player-2'], 'player-3' => $safe['team-2-player-3'], 'player-4' => $safe['team-2-player-4'], 'points' => 0]],               
]);

现在,在我的 Twig 中,我想检索我的 team_1 的名字,例如,我这样做了:

app.session.get('teams')['team_1']

它不起作用,但是,如果我转储最后一段代码,我会得到如下图所示的结果:

我觉得我很接近答案,但到目前为止。

既然keys会return你一个简单的数组,那么键是从0(array | length) - 1的整数,用Twig来表达。

请注意,当您定义数组

时,这实际上与 PHP 的行为相同
['foo', 'bar', 'baz']

这将严格等同于

[0 => 'foo', 1 => 'bar', 2 => 'baz']

所以在你的情况下,因为数组中只有一个元素,你可以使用 array[0]array.0.

总而言之,这可行:

{{ (app.session.get('teams').team_1 | keys).0 }}

可以从https://twigfiddle.com/b6iy8i

测试