如何从php中的多维关联数组中检索特定值?

问题描述 投票:0回答:1

我正在尝试遍历以下数组,以便可以打印出团队名称以及#text中的值。到目前为止,我已经解码了json文件,并能够以以下方式在php文件中对其进行格式设置,但我不知道如何获取特定数据,例如团队名称和#text。关于如何解决这个问题的任何想法?任何帮助深表感谢。谢谢!

Array
(
  [overallteamstandings] => Array
    (
        [lastUpdatedOn] => 2019-12-11 4:40:09 PM
        [teamstandingsentry] => Array
            (
                [0] => Array
                    (
                        [team] => Array
                            (
                                [ID] => 56
                                [City] => Baltimore
                                [Name] => Ravens
                                [Abbreviation] => BAL
                            )

                        [rank] => 1
                        [stats] => Array
                            (
                                [GamesPlayed] => Array
                                    (
                                        [@abbreviation] => G
                                        [#text] => 13
                                    )

                                [PassAttempts] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => Att
                                        [#text] => 360
                                    )

                                [PassCompletions] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => Comp
                                        [#text] => 240
                                    )

                                [PassPct] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => Pct
                                        [#text] => 66.7
                                    )

                                [PassGrossYards] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => Yds
                                        [#text] => 2804
                                    )

                                [PassNetYards] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => NetYds
                                        [#text] => 2687
                                    )

                                [PassAvg] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => Avg
                                        [#text] => 7.8
                                    )

                                [PassYardsPerAtt] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => Yards/Att
                                        [#text] => 7.0
                                    )

                                [PassTD] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => TD
                                        [#text] => 29
                                    )

                                [PassTDPct] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => TD%
                                        [#text] => 8.1
                                    )

                                [PassInt] => Array
                                    (
                                        [@category] => Passing
                                        [@abbreviation] => Int
                                        [#text] => 7
                                    )
php json associative-array
1个回答
0
投票

您可以使用foreach循环获取数据。但是请尝试将文本用作字符串,当前它的作用类似于注释。然后尝试这个]

foreach($overallteamstandings as $overall) {
    foreach($overall['teamstandingsentry'] as $key=>$teams) {
        foreach($teams[$key] as $data) {
            foreach($data['stats'] as $keys=>$stat) {
                echo $stat['GamesPlayed']['#text'];
            }
        }
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.