Spielplan
Version vom 26. Juli 2018, 13:35 Uhr von Lionkeen (Diskussion | Beiträge)
Api Key
URL Schema
https://api.2basketballbundesliga.de/spielplan/proa/2017-2018/8be6f5bc7a30937ccd761615142ad2e4
https://api.2basketballbundesliga.de/spielplan/proa-po/2017-2018/8be6f5bc7a30937ccd761615142ad2e4
https://api.2basketballbundesliga.de/spielplan/prob-nord/2017-2018/8be6f5bc7a30937ccd761615142ad2e4
https://api.2basketballbundesliga.de/spielplan/prob-sued/2017-2018/8be6f5bc7a30937ccd761615142ad2e4
https://api.2basketballbundesliga.de/spielplan/prob-po/2017-2018/8be6f5bc7a30937ccd761615142ad2e4
https://api.2basketballbundesliga.de/spielplan/prob-nord-pd/2017-2018/8be6f5bc7a30937ccd761615142ad2e4
https://api.2basketballbundesliga.de/spielplan/proa-sued-pd/2017-2018/8be6f5bc7a30937ccd761615142ad2e4
der erste Parameter ist die anzusprechende Schnittstelle, der zweite der API Key
Format
das Format ist JSON, hier die beispielhafte Ausgabe
{
"data": {
"league": "ProB Nord",
"season": "2014\/2015",
"day": "1",
},
"1": [{
"datetime": false,
"homeId": "550",
"home": "Otto Baskets Magdeburg",
"guestId": "0",
"guest": "spielfrei",
"hPoints": null,
"gPoints": null
}, {
"datetime": 1411833600,
"homeId": "545",
"home": "BSW Sixers",
"guestId": "467",
"guest": "Uni-Riesen Leipzig",
"hPoints": null,
"gPoints": null
}, {
"datetime": 1411837200,
"homeId": "436",
"home": "VfL AstroStars Bochum",
"guestId": "549",
"guest": "Citybasket Recklinghausen",
"hPoints": null,
"gPoints": null
}],
"2": [{
"datetime": false,
"homeId": "0",
"home": "spielfrei",
"guestId": "510",
"guest": "Hertener L\u00f6wen",
"hPoints": null,
"gPoints": null
}, {
"datetime": 1412344800,
"homeId": "547",
"home": "Dresden Titans",
"guestId": "530",
"guest": "RSV Eintracht",
"hPoints": null,
"gPoints": null
}, {
"datetime": 1412442000,
"homeId": "548",
"home": "Baskets Akademie Weser-Ems\/OTB",
"guestId": "550",
"guest": "Otto Baskets Magdeburg",
"hPoints": null,
"gPoints": null
}]
}
data gibt nochmal die Liga sowie die Saison aus. Die folgenden array's haben eine Numeric ID die dem Spieltag entspricht. Die nächsten array's enthalten die Daten zu den Spieltagen.
datetime => Numeric, Unixtime
homeID => Numeric, eindeutige ID des Hometeams
home => VarChar, Name des Hometeams
guestID => Numeric, eindeutige ID des Guestteams
guest => VarChar, Name des Gastteams
hPoints => Numeric, erzielte Punkte des Hometeams
gPoints => Numeric, erzielte Punkte des Gastteams
Beispiel der Einbindung
ein Beispiel zum erzeugen einer HTML Tabelle in PHP
ACHTUNG: hier fehlen Checks, das Beispiel soll nur grundlegenden Umgang vermitteln nicht in produktiven Umgebungen benutzen!
$url = "api.zweite-basketball-bundesliga.de";
$api = "spielplan_prob-nord";
$key = "8be6f5bc7a30937ccd761615142ad2e4";
$json = file_get_contents('http://'.$url.'/'.$api.'/'.$key);
//true wandelt in Array anstatt Object
$arr = json_decode($json, true);
//Tabelle mit Überschriften erstellen
echo "<table>";
echo "<tr>
<th>Spieltag</th>
<th>Datum</th>
<th>Uhrzeit</th>
<th>Heim</th>
<th>Gast</th>
<th>Ergebnis</th>
</tr>";
//die array's durchgehen
foreach ($arr as $day => $data)
{
//nur Numerische Arrays ausgeben
if (is_numeric($day))
if (is_array($data[0]))
{
foreach ($data as $d)
{
echo "<tr>
<td>".$day."</td>
<td>".date("d.m.Y",$d["datetime"])."</td>
<td>".date("H:i",$d["datetime"])."</td>
<td>".$d["home"]."</td>
<td>".$d["guest"]."</td>
<td>".$d["hPoints"].":".$d["gPoints"]."</td>
</tr>";
}
}
else
echo "<tr>
<td>".$day."</td>
<td>".date("d.m.Y",$data["datetime"])."</td>
<td>".date("H:i",$data["datetime"])."</td>
<td>".$data["home"]."</td>
<td>".$data["guest"]."</td>
<td>".$data["hPoints"].":".$data["gPoints"]."</td>
</tr>";
}
//tabelle schließen
echo "</table>";
?>