首页 > 解决方案 > 如何在双数组 JSON (php) 上显示信息

问题描述

我想知道如何显示下面的信息。

链接(JSON):

https://my.callofduty.com/api/papi-client/ce/v1/title/bo4/platform/psn/match/11337378706913618925/matchMapEvents

我希望拥有的:

"teams": [
      [
        {
          "provider": "psn",
          "username": "Germania1992"
        },
        {
          "provider": "psn",
          "username": "killzoneprofi"
        },
        {
          "provider": "psn",
          "username": "ayozetf87"
        },
        {
          "provider": "psn",
          "username": "Seith911"
        },
        {
          "provider": "psn",
          "username": "domibreu92"
        }
      ],
      [
        {
          "provider": "psn",
          "username": "Thejuankarboy"
        },
        {
          "provider": "psn",
          "username": "Gamermad101"
        },
        {
          "provider": "psn",
          "username": "Izdrap"
        },
        {
          "provider": "psn",
          "username": "Guerra_sv"
        },
        {
          "provider": "psn",
          "username": "TriX_FollOoW_YT"
        }
      ]
    ],

我想显示不同球队的昵称

示例:团队 1 = Germania1992、killzoneprofi、ayozetf87、Seith911、domibreu92

谢谢

标签: phparraysjsondouble

解决方案


你必须做一个双 foreach 肯定的。

<?php
// Get the json of the team
$team = team("https://my.callofduty.com/api/papi-client/ce/v1/title/bo4/platform/psn/match/11337378706913618925/matchMapEvents");

// Display the teams info
foreach($team as $nb=>$data){
    echo "Team $nb<br />";
    foreach($data as $key=>$value){
        echo "Provider: ".$value->provider."<br />";
        echo "Username: ".$value->username."<br />";
    }
    echo "<hr>";
}

// Returns the team array of the json
function team($jsonURL){
  $content=file_get_contents($jsonURL);
  $data=json_decode($content);
  return $data->data->teams;
}

?>

您可以将团队编号增加 1 以避免第一个为 0

以上将显示以下屏幕截图(您可以随意格式化输出)

在此处输入图像描述


推荐阅读