Test Script für suhv_lib.php

Author Bert Hofmänner, Hofmänner New Media

About

Das SUHVphp Framework wurde erstellt, um schnell und einfach Daten über die SUHV Rest Schnittstelle beziehen und darstellen zu können. Weiter wird grosser Wert auf Performance gelegt. Die Schnittstelle soll also nicht unnütz aufgerufen werden. Darum wird ein dreistufiger Caching Prozess eingebaut. Die Daten, welche über die Schnittstelle aufgerufen werden, werden...

  1. auf dem Objekt (Klub oder Team),
  2. als Resultate auf dem API Manager und
  3. als Cache Files gespeichert

Lizenz

Das Script suhv_lip.php wird unter der Creative Commons Lizenz veröffentlicht. Du darfst das Script vervielfälltigen verbreiten oder öffentlich zugänglich machen. Auch Abwandlungen oder Bearbeitungen sind erlaubt. Einzige Bedingungen sind die Nennung des Authors und die nicht kommerzielle Verwertung. Keine kommerzielle Nutzung stellt die Nutzung für einen Unihockey Verein dar. Als kommerziell gilt beispielsweise der Einsatz in deiner Lösung, welche gegen Entgeld Dritten zur Verfügung gestellt wird.

Die vollständigen Lizenzbedingungen sind auf der Seite von Creative Commons zu finden.

Support

Grundsätzlich wir das Script "as-is" zur Verfügung gestellt. Es steht kein Support zur Verfügung. Allenfalls können Fragen über die Google Gruppe für Webmaster beantwortet werden.

Demo

Neben diesem File steht auch folgende Demo-Applikation zur Verfügung. Mit dieser Applikation können die Resultate von allen Klubs und Teams abgerufen werden.

zur Demo Applikation

Set-up

Stelle sicher, dass die Konstanten in suhv_lib.php richtig gesetzt sind. Die folgenden Konstanten können übrigens auch schon vor dem Aufruf der Library gesetzt werden. Der grosse Vorteil davon ist, dass die Library in diesem Falle unverändert eingebaut werden kann, was den Update auf spätere Versionen erleichtert!

define('CFG_SUHV_CLUB', 'UHC Winterthur United');
define('CFG_SUHV_API_KEY', 'dein_api_key_hier');
define('CFG_SUHV_CACHE_DIR', '/cache');

Erklärungen der Konstanten

Konstante Erklärung
CFG_SUHV_CLUB Der Name deines Clubs (muss mit dem Namen in der SUHV Datenbank übereinstimmen)
CFG_SUHV_API_KEY Der API Key wird von swissunihockey verwendet um den Zugriff auf die Schnittstelle überwachen zu können.
CFG_SUHV_CACHE_DIR Cache Verzeichnis - relativ zum Speicherort der Datei suhv_lib.php. Wichtig: Das Verzeichnis muss existieren und PHP braucht Schreibberechtigungen in diesem Verzeichnis!

Wichtig Diese drei Werte müssen richtig gesetzt sein! Sonst funktioniert das Framework nicht wie gewünscht. Ein API Key kann man auf api.swissunihockey.ch/ beantragen. Beim Cache Verzeichnis ist wichtig, dass PHP Schreibberechtigung in diesem Verzeichnis besitzt! Fehlt das Cache Verzeichnis oder verfügt PHP darin nicht über Schreibrechte, wird eine Exception geworfen.

Files

File Erklärung
suhv_lib.php Die Core Klassen des Frameworks. Sollte nicht verändert werden.
suhv_html_lib.php Klassen zum Generieren von HTML Output. Benötigt die Core Klassen. Kann frei geändert werden. Ich empfehle aber - wo möglich - Anpassungen über das CSS vorzunehmen.
suhv.css CSS File für die Darstellung des HTML Codes, der mit suhv_html_lib.php generiert wird. Kann beliebig verändert werden.
index.php Dieses File - demonstriert die Funktionen des Frameworks.
demo.php Eine Beispielanwendung, welche das SUHVphp Framework extensiv benützt. Reinschauen und inspirieren lassen ;-)
template.html HTML Template - wird für demo.php benötigt.

Einbindung in eigene Scripte

Dort wo du das SUHV Framework verwenden willst, musst du nur noch nur noch suhv_lip.php und suhv_html_lib.php einbinden. Am besten über require_once. suhv_html_lib.php wird nur benötigt, wenn auch die HTML Klassen gebraucht werden. Das könnte zum Beispiel so aussehen:

// 1. wichtige Konstanten definieren:
define('CFG_SUHV_CLUB', 'UHC Winterthur United');
define('CFG_SUHV_API_KEY', 'dein_api_key_hier');
define('CFG_SUHV_CACHE_DIR', '/cache');

// 2. libraries aufrufen
require_once('suhv_lib.php');
require_once('suhv_html_lib.php');

Fortgeschrittene PHP Entwickler machen um das ganze noch eine try / catch Schleife und fangen mögliche SuhvException.

Verein

Hier werden die Möglichkeiten auf Stufe Verein gezeigt. Der Verein wird im SUHVphp Framework über die Klasse SuhvClub abgebildet. Ein Club kann wie folgt erstellt werden:

$club = new SuhvClub(444, 2012);

Der erste Parameter ist die club_id und der zweite die aktuelle Saison. Beide Parameter können leer gelassen werden. In diesem Falle wird automatisch der in der Konstante CFG_SUHV_CLUB beschriebene Club für die aktuelle Saison eröffnet.

Vereins Informationen

Die Vereinsadresse kann über $club->getAddress() ausgelesen werden.

Eisweiherstrasse 82
8400 Winterthur
052 222 36 70

Es besteht auch die Möglichkeit die URL abzufragen: $club->getUrl():

www.win-u.ch

Alle Teams deines Vereins

Dieser Abschnitt zeigt ein Beispiel für den Clubs Services.

Diese Tabelle ist nicht für die Ausgabe auf einer Homepage gedacht. Sie demonstriert lediglich, wie man alle Teams eines Clubs von der Schnittstelle beziehen kann.

ID Team Teamname Ligacode Gruppe
409379 Herren GF 2. Liga UHC Winterthur United 114 4
431053 Herren GF 4. Liga UHC Winterthur United II 116 6
2896 Herren KF 5. Liga UHC Winterthur United III 127 9
431268 Junioren U14 B UHC Winterthur United 142 9
431792 Junioren U14 B UHC Winterthur United II 142 11
428334 U16 B UHC Winterthur United 162 3
429468 U21 C UHC Winterthur United 193 3
1256 Damen KF 1. Liga UHC Winterthur United 223 2
422305 Junioren D UHC Winterthur United III 344 18
418981 Junioren D UHC Winterthur United I 344 19
417971 Junioren D UHC Winterthur United II 344 25
429865 Junioren E UHC Winterthur United II 354 17
429365 Junioren E UHC Winterthur United I 354 19
430631 Junioren E UHC Winterthur United III 354 20

Letzte Spiele deines Vereins

Dieser Abschnitt behandelt die Search Funktion des Games Services.

Das tolle am SUHVphp Framework ist, dass sehr einfach Resultate ausgegeben werden können. Mit der folgenden Zeile Code erscheint die darauf folgende Ausgabe:

SuhvClubHtmlBuilder::outputPlayedGames($club);
Datum, Zeit Heim Gast Resultat
21.12.2025, 14:30 Junioren E Red Lions Frauenfeld I 3 : 2
21.12.2025, 14:00 UHC Phantoms Rafzerfeld Junioren E 0 : 9
21.12.2025, 14:00 Junioren E HC Rychenberg Winterthur II 3 : 8
21.12.2025, 13:35 Junioren U14 B UHC Tägerwilen 2 : 1
21.12.2025, 13:00 Junioren E Bülach Floorball V 6 : 3
21.12.2025, 13:00 Red Lions Frauenfeld I Junioren E 9 : 10
21.12.2025, 12:30 Bassersdorf Nürensdorf III Junioren E 3 : 4
21.12.2025, 12:30 HC Rychenberg Winterthur II Junioren E 7 : 6
21.12.2025, 11:30 Junioren E Bülach Floorball IV 4 : 5
21.12.2025, 11:00 Junioren E Red Ants Winterthur II 4 : 2
21.12.2025, 10:50 Grasshopper Club Zürich II Herren GF 4. Liga 5 : 6
21.12.2025, 10:00 Bülach Floorball IV Junioren E 5 : 1
21.12.2025, 09:30 Red Ants Winterthur II Junioren E 1 : 8
21.12.2025, 09:00 Herren GF 4. Liga Züri Süd II 2 : 3
21.12.2025, 09:00 Junioren U14 B Zürich Oberland Pumas II 5 : 3

Im oben gezeigten Beispiel sorgt die suhv_html_lib.php für die Zusammenstellung der gesuchten Spieldaten und stellt das Resultat direkt in HTML zur Verfügung.

Nächste Spiele deines Vereins

Dieser Abschnitt behandelt die Search Funktion des Games Services.

Datum, Zeit Heimteam Gastteam Spielort
10.01.2026, 09:00 Floorball Thurgau I Junioren E Dammbühlhalle, Wängi
10.01.2026, 10:30 Junioren E HC Rychenberg Winterthur II Dammbühlhalle, Wängi
10.01.2026, 11:30 Junioren E UHT H.S. Bronschhofen II Dammbühlhalle, Wängi
11.01.2026, 09:55 Junioren U14 B Bassersdorf Nürensdorf Sporthalle Hirslen, Bülach
11.01.2026, 11:45 Glattal Falcons Junioren U14 B Sporthalle Hirslen, Bülach
11.01.2026, 12:40 Herren KF 5. Liga UHC Elgg III Turnhalle Ritschberg, Elgg
11.01.2026, 13:45 Junioren U14 B UHC Wängi Sporthalle Arbon, Arbon
11.01.2026, 14:00 U21 C Hurricanes Glarnerland Weesen Oberseen, Winterthur
11.01.2026, 14:30 Bülach Floorball III Junioren D Walenbach, Wetzikon ZH
11.01.2026, 15:25 UHC Wängi II Herren KF 5. Liga Turnhalle Ritschberg, Elgg
11.01.2026, 15:45 Thurgau Unihockey Erlen III Junioren U14 B Sporthalle Arbon, Arbon
11.01.2026, 17:00 Herren GF 2. Liga UHC Alligator Malans II Oberseen, Winterthur
11.01.2026, 17:15 Junioren D Zürich Oberland Pumas III Walenbach, Wetzikon ZH
17.01.2026, 09:00 HC Rychenberg Winterthur III Junioren E Rennweg, Winterthur
17.01.2026, 10:00 Junioren E Red Lions Frauenfeld II Rennweg, Winterthur

Auch diese Ausgabe ist mit einer Zeile Code zu erreichen, sobald man den $club definiert hat:

SuhvClubHtmlBuilder::outputPlannedGames($club);

Team

Wichtiger Tipp!

Um alle Möglichkeiten der SuhvTeam Klasse zu nutzen und die REST Services des SUHVs möglichst zu entlasten, macht es Sinn, dass die Team Objekte in einer Datenbank gespeichert werden. Diese Datenbank sollte folgende beiden Werte speichern:

Name Typ Beschreibung Beispiel
team_id INT(10) unsigned SUHV Team ID (muss nicht zwingend der PRIMARY KEY sein) 409379
object Text serialisiertes Team-Objekt $team->serialize()

Team Objekt erstellen

Die benötigten Werte, um ein Team Objekt zu erstellen, sollten aus der der Datenbank gelesen werden! Beispiel folgt:

// auslesen der Team Werte aus der Datenbank
$sql = "select team_id, object from team where team_id = 409379";
$result = mysql_query($sql);
$team = mysql_fetch_assoc($result);

// prüfen, ob ein serialisierter Wert des Objektes vorhanden ist
if ($team['object']) {
	$team = SuhvTeam::unserialize($team['object']));
} else {
	$team = new SuhvTeam($team['team_id'];
}
		

Zu beachten: Das Ranking ist ein Array, welcher fortlaufend auf dem Objekt gespeichert wird. Wird das Objekt auf der Datenbank gespeichert, zeigt er den Verlauf der Rangierung eines Teams nach Runden auf. Wird das Objekt nicht auf der Datenbank serialisiert gespeichert, kann diese Funktion nicht genutzt werden. Ich empfehle daher unbedingt, dass jedes Team-Objekt auf der Datenbank serialisiert gespeichert wird.

Team Objekt in der DB speichern

Am Ende jedes Scriptes sollte geprüft werden, ob das Team Objekt geändert wurde. Diese Information liefert die Methode $team->isUpdated(). Falls ja, muss das Objekt in der Datenbank gespeichert werden.

// prüfen, ob das Team Objekt geändert wurde
if ($team->isUpdated()) {
	// team objekt in der datenbank speichern!
	$sql = "UPDATE team SET object = '" . $team->serialize() . "' WHERE team_id = " . $team->getId();
	mysql_query($sql);
}

Alle Spiele eines Teams

Dieser Abschnitt behandelt die Teams Services.

Bitte schaut im Quelltext von index.php nach, wie wir die Team Daten auslesen.

Cupspiele

Datum, Zeit Heim Gast Resultat
17.05.2025, 10:15 UHC Wehntal Regensdorf UHC Winterthur United 4 : 5 n.V.
29.06.2025, 18:30 UHC Lokomotive Stäfa UHC Winterthur United 3 : 8
23.08.2025, 18:00 UHC R. Grabs-Werdenberg UHC Winterthur United 5 : 4

Gespielte Meisterschaftspiele

Datum, Zeit Heim Gast Resultat
13.09.2025, 18:00 UHC R. Grabs-Werdenberg UHC Winterthur United 5 : 0
20.09.2025, 19:00 Kadetten UH Schaffhausen UHC Winterthur United 2 : 4
27.09.2025, 18:00 UHC Winterthur United Nesslau Sharks 5 : 7
05.10.2025, 13:30 UHC Alligator Malans II UHC Winterthur United 4 : 7
12.10.2025, 17:00 UHC Winterthur United United Toggenburg Bazenheid 5 : 1
19.10.2025, 14:00 UHC Winterthur United UHC Sarganserland II 4 : 6
02.11.2025, 18:00 UH Appenzell UHC Winterthur United 2 : 6
09.11.2025, 17:00 UHC Winterthur United Hurricanes Glarnerland Weesen 5 : 2
16.11.2025, 14:00 UHC Wängi UHC Winterthur United 3 : 2
23.11.2025, 17:00 UHC Winterthur United UHC R. Grabs-Werdenberg 3 : 7
30.11.2025, 19:00 UHC Winterthur United Kadetten UH Schaffhausen 7 : 4
06.12.2025, 20:00 Nesslau Sharks UHC Winterthur United 4 : 3

Zukünftige Meisterschaftsspiele

Datum, Zeit Gegner Spielort
11.01.2026, 17:00 UHC Alligator Malans II Oberseen, Winterthur
17.01.2026, 19:30 United Toggenburg Bazenheid Turnhalle Grüenau, Wattwil
25.01.2026, 14:00 UHC Sarganserland II Sporthalle Riet, Sargans
08.02.2026, 17:00 UH Appenzell Oberseen, Winterthur
14.02.2026, 19:45 Hurricanes Glarnerland Weesen Sporthalle Schwanden, Schwanden GL
01.03.2026, 17:00 UHC Wängi Oberseen, Winterthur

Tabelle

R. Team S G U V + - +/- P
1 United Toggenburg Bazenheid 12 9 (2) 0 1 68 35 33 31
2 UHC R. Grabs-Werdenberg 12 6 (2) 0 2 (2) 61 44 17 24
3 Kadetten UH Schaffhausen 12 7 (1) 0 4 62 53 9 23
4 Nesslau Sharks 12 6 (2) 0 3 (1) 52 45 7 23
5 UHC Wängi 12 5 (1) 0 4 (2) 73 67 6 19
6 UHC Winterthur United 12 6 0 6 51 47 4 18
7 UH Appenzell 12 5 (1) 0 5 (1) 57 59 -2 18
8 UHC Sarganserland II 12 4 0 7 (1) 58 73 -15 13
9 Hurricanes Glarnerland Weesen 12 0 (3) 0 8 (1) 41 66 -25 7
10 UHC Alligator Malans II 12 0 0 8 (4) 47 81 -34 4

Alle Spiele der Gruppe

Dieser Abschnitt bezieht Daten vom Leagues Service. Um die Daten der Liga zu erhalten, muss ein SuhvLeague Objekt erstellt werden. Das SuhvLeague Objekt kann aus dem SuhvTeam Objekt geholt werden ($team->getSuhvLeague()) oder es kann neu instanziert werden ($league = new SuhvLeague($team->getLeague(), $team->getGroup())).

Runde 1
Datum, Zeit Heim Gast Resultat
12.09.2025, 20:00 Hurricanes Glarnerland Weesen UH Appenzell 2 : 9
13.09.2025, 15:00 UHC Sarganserland II UHC Wängi 3 : 8
13.09.2025, 17:00 UHC Alligator Malans II Kadetten UH Schaffhausen 2 : 6
13.09.2025, 18:00 UHC R. Grabs-Werdenberg UHC Winterthur United 5 : 0
13.09.2025, 19:30 United Toggenburg Bazenheid Nesslau Sharks 5 : 1
Runde 2
Datum, Zeit Heim Gast Resultat
20.09.2025, 14:00 UHC Wängi UH Appenzell 8 : 4
20.09.2025, 19:00 Kadetten UH Schaffhausen UHC Winterthur United 2 : 4
20.09.2025, 19:45 Hurricanes Glarnerland Weesen United Toggenburg Bazenheid 1 : 8
20.09.2025, 20:00 UHC R. Grabs-Werdenberg UHC Sarganserland II 8 : 7 n.V.
21.09.2025, 17:00 Nesslau Sharks UHC Alligator Malans II 7 : 4
Runde 3
Datum, Zeit Heim Gast Resultat
27.09.2025, 17:00 UHC Alligator Malans II United Toggenburg Bazenheid 4 : 7
27.09.2025, 18:00 UHC Winterthur United Nesslau Sharks 5 : 7
27.09.2025, 20:00 UH Appenzell UHC R. Grabs-Werdenberg 2 : 4
28.09.2025, 14:00 UHC Sarganserland II Kadetten UH Schaffhausen 4 : 7
28.09.2025, 14:00 Hurricanes Glarnerland Weesen UHC Wängi 3 : 7
Runde 4
Datum, Zeit Heim Gast Resultat
04.10.2025, 17:00 United Toggenburg Bazenheid UHC Wängi 6 : 3
04.10.2025, 17:00 UHC R. Grabs-Werdenberg Hurricanes Glarnerland Weesen 4 : 5 n.V.
04.10.2025, 19:00 Kadetten UH Schaffhausen UH Appenzell 3 : 2 n.V.
04.10.2025, 20:00 Nesslau Sharks UHC Sarganserland II 3 : 0
05.10.2025, 13:30 UHC Alligator Malans II UHC Winterthur United 4 : 7
Runde 5
Datum, Zeit Heim Gast Resultat
11.10.2025, 17:00 UHC Wängi UHC R. Grabs-Werdenberg 3 : 6
11.10.2025, 17:00 UH Appenzell Nesslau Sharks 5 : 2
12.10.2025, 14:00 UHC Sarganserland II UHC Alligator Malans II 6 : 3
12.10.2025, 17:00 UHC Winterthur United United Toggenburg Bazenheid 5 : 1
12.10.2025, 18:00 Kadetten UH Schaffhausen Hurricanes Glarnerland Weesen 4 : 3
Runde 6
Datum, Zeit Heim Gast Resultat
18.10.2025, 17:00 United Toggenburg Bazenheid UHC R. Grabs-Werdenberg 5 : 4 n.P.
18.10.2025, 19:00 UHC Alligator Malans II UH Appenzell 6 : 7 n.V.
18.10.2025, 19:00 Kadetten UH Schaffhausen UHC Wängi 7 : 6
18.10.2025, 20:00 Nesslau Sharks Hurricanes Glarnerland Weesen 4 : 3 n.V.
19.10.2025, 14:00 UHC Winterthur United UHC Sarganserland II 4 : 6
Runde 7
Datum, Zeit Heim Gast Resultat
01.11.2025, 17:00 UHC Wängi Nesslau Sharks 5 : 6 n.V.
02.11.2025, 14:00 Hurricanes Glarnerland Weesen UHC Alligator Malans II 5 : 4 n.V.
02.11.2025, 14:00 UHC Sarganserland II United Toggenburg Bazenheid 4 : 7
02.11.2025, 18:00 UH Appenzell UHC Winterthur United 2 : 6
02.11.2025, 18:00 UHC R. Grabs-Werdenberg Kadetten UH Schaffhausen 7 : 3
Runde 8
Datum, Zeit Heim Gast Resultat
07.11.2025, 20:30 United Toggenburg Bazenheid Kadetten UH Schaffhausen 3 : 1
09.11.2025, 17:00 UHC Winterthur United Hurricanes Glarnerland Weesen 5 : 2
09.11.2025, 17:00 Nesslau Sharks UHC R. Grabs-Werdenberg 4 : 1
09.11.2025, 18:00 UHC Sarganserland II UH Appenzell 5 : 6
09.11.2025, 19:30 UHC Alligator Malans II UHC Wängi 7 : 8 n.V.
Runde 9
Datum, Zeit Heim Gast Resultat
15.11.2025, 20:00 UHC R. Grabs-Werdenberg UHC Alligator Malans II 7 : 6 n.V.
16.11.2025, 14:00 UHC Wängi UHC Winterthur United 3 : 2
16.11.2025, 18:00 Hurricanes Glarnerland Weesen UHC Sarganserland II 2 : 4
16.11.2025, 19:00 Kadetten UH Schaffhausen Nesslau Sharks 5 : 4
16.11.2025, 19:00 UH Appenzell United Toggenburg Bazenheid 4 : 6
Runde 10
Datum, Zeit Heim Gast Resultat
22.11.2025, 19:00 Kadetten UH Schaffhausen UHC Alligator Malans II 7 : 4
22.11.2025, 20:00 Nesslau Sharks United Toggenburg Bazenheid 5 : 6 n.V.
23.11.2025, 14:00 UHC Wängi UHC Sarganserland II 8 : 11
23.11.2025, 17:00 UHC Winterthur United UHC R. Grabs-Werdenberg 3 : 7
23.11.2025, 20:00 UH Appenzell Hurricanes Glarnerland Weesen 6 : 5
Runde 11
Datum, Zeit Heim Gast Resultat
29.11.2025, 20:00 UH Appenzell UHC Wängi 5 : 8
30.11.2025, 10:30 UHC Alligator Malans II Nesslau Sharks 3 : 5
30.11.2025, 14:00 United Toggenburg Bazenheid Hurricanes Glarnerland Weesen 5 : 3
30.11.2025, 17:00 UHC Sarganserland II UHC R. Grabs-Werdenberg 1 : 4
30.11.2025, 19:00 UHC Winterthur United Kadetten UH Schaffhausen 7 : 4
Runde 12
Datum, Zeit Heim Gast Resultat
06.12.2025, 14:00 UHC Wängi Hurricanes Glarnerland Weesen 6 : 7 n.V.
06.12.2025, 17:00 United Toggenburg Bazenheid UHC Alligator Malans II 9 : 0
06.12.2025, 17:00 UHC R. Grabs-Werdenberg UH Appenzell 4 : 5
06.12.2025, 19:00 Kadetten UH Schaffhausen UHC Sarganserland II 13 : 7
06.12.2025, 20:00 Nesslau Sharks UHC Winterthur United 4 : 3
Runde 13
Datum, Zeit Heim Gast Resultat
10.01.2026, 16:00 UH Appenzell Kadetten UH Schaffhausen
10.01.2026, 17:00 UHC Wängi United Toggenburg Bazenheid
10.01.2026, 17:00 Hurricanes Glarnerland Weesen UHC R. Grabs-Werdenberg
10.01.2026, 17:00 UHC Sarganserland II Nesslau Sharks
11.01.2026, 17:00 UHC Winterthur United UHC Alligator Malans II
Runde 14
Datum, Zeit Heim Gast Resultat
17.01.2026, 17:00 UHC R. Grabs-Werdenberg UHC Wängi
17.01.2026, 17:00 Hurricanes Glarnerland Weesen Kadetten UH Schaffhausen
17.01.2026, 19:30 United Toggenburg Bazenheid UHC Winterthur United
17.01.2026, 20:00 Nesslau Sharks UH Appenzell
18.01.2026, 18:00 UHC Alligator Malans II UHC Sarganserland II
Runde 15
Datum, Zeit Heim Gast Resultat
24.01.2026, 14:00 UHC Wängi Kadetten UH Schaffhausen
24.01.2026, 17:00 UHC R. Grabs-Werdenberg United Toggenburg Bazenheid
24.01.2026, 17:00 Hurricanes Glarnerland Weesen Nesslau Sharks
24.01.2026, 20:00 UH Appenzell UHC Alligator Malans II
25.01.2026, 14:00 UHC Sarganserland II UHC Winterthur United
Runde 16
Datum, Zeit Heim Gast Resultat
06.02.2026, 20:30 United Toggenburg Bazenheid UHC Sarganserland II
07.02.2026, 19:00 Kadetten UH Schaffhausen UHC R. Grabs-Werdenberg
07.02.2026, 20:00 Nesslau Sharks UHC Wängi
08.02.2026, 17:00 UHC Alligator Malans II Hurricanes Glarnerland Weesen
08.02.2026, 17:00 UHC Winterthur United UH Appenzell
Runde 17
Datum, Zeit Heim Gast Resultat
14.02.2026, 17:00 UHC R. Grabs-Werdenberg Nesslau Sharks
14.02.2026, 19:00 Kadetten UH Schaffhausen United Toggenburg Bazenheid
14.02.2026, 19:45 Hurricanes Glarnerland Weesen UHC Winterthur United
14.02.2026, 20:00 UHC Wängi UHC Alligator Malans II
15.02.2026, 19:00 UH Appenzell UHC Sarganserland II
Runde 18
Datum, Zeit Heim Gast Resultat
28.02.2026, 13:30 UHC Alligator Malans II UHC R. Grabs-Werdenberg
28.02.2026, 17:00 United Toggenburg Bazenheid UH Appenzell
28.02.2026, 20:00 Nesslau Sharks Kadetten UH Schaffhausen
01.03.2026, 14:00 UHC Sarganserland II Hurricanes Glarnerland Weesen
01.03.2026, 17:00 UHC Winterthur United UHC Wängi

Debug

Für die Performance deines Scriptes ist es wichtig, die REST Anfragen so weit als möglich zu minimieren. Mit der Anweisung SuhvApiManager::getInstance()->getLog(), kannst du kontrollieren, wieviele Anfragen getätigt wurden:

Array
(
    [0] => 2026-01-02 18:32:09 - cache - clubs/search?q=Winterthur%20United
    [1] => 2026-01-02 18:32:09 - cache - clubs/444/teams?season=2025
    [2] => 2026-01-02 18:32:09 - cache - clubs/444
    [3] => 2026-01-02 18:32:09 - cache - teams/409379/registrations?season=2025
    [4] => 2026-01-02 18:32:09 - internal - clubs/444
    [5] => 2026-01-02 18:32:09 - internal - clubs/444
    [6] => 2026-01-02 18:32:09 - cache - teams/431053/registrations?season=2025
    [7] => 2026-01-02 18:32:09 - cache - teams/2896/registrations?season=2025
    [8] => 2026-01-02 18:32:09 - cache - teams/431268/registrations?season=2025
    [9] => 2026-01-02 18:32:09 - cache - teams/431792/registrations?season=2025
    [10] => 2026-01-02 18:32:09 - cache - teams/428334/registrations?season=2025
    [11] => 2026-01-02 18:32:09 - cache - teams/429468/registrations?season=2025
    [12] => 2026-01-02 18:32:09 - cache - teams/1256/registrations?season=2025
    [13] => 2026-01-02 18:32:09 - cache - teams/422305/registrations?season=2025
    [14] => 2026-01-02 18:32:09 - cache - teams/418981/registrations?season=2025
    [15] => 2026-01-02 18:32:09 - cache - teams/417971/registrations?season=2025
    [16] => 2026-01-02 18:32:09 - cache - teams/429865/registrations?season=2025
    [17] => 2026-01-02 18:32:09 - cache - teams/429365/registrations?season=2025
    [18] => 2026-01-02 18:32:09 - cache - teams/430631/registrations?season=2025
    [19] => 2026-01-02 18:32:09 - cache - games/search?q=UHC%20Winterthur%20United&status=played&order=desc&season=2025&limit=15
    [20] => 2026-01-02 18:32:09 - cache - games/search?q=UHC%20Winterthur%20United&status=planned&order=asc&season=2025&limit=15
    [21] => 2026-01-02 18:32:09 - cache - gyms/417302
    [22] => 2026-01-02 18:32:09 - internal - gyms/417302
    [23] => 2026-01-02 18:32:09 - internal - gyms/417302
    [24] => 2026-01-02 18:32:09 - cache - gyms/463238
    [25] => 2026-01-02 18:32:09 - internal - gyms/463238
    [26] => 2026-01-02 18:32:09 - cache - gyms/30163
    [27] => 2026-01-02 18:32:09 - cache - gyms/463242
    [28] => 2026-01-02 18:32:09 - cache - gyms/30614
    [29] => 2026-01-02 18:32:09 - cache - gyms/41213
    [30] => 2026-01-02 18:32:09 - internal - gyms/30163
    [31] => 2026-01-02 18:32:09 - internal - gyms/463242
    [32] => 2026-01-02 18:32:09 - internal - gyms/30614
    [33] => 2026-01-02 18:32:09 - internal - gyms/41213
    [34] => 2026-01-02 18:32:09 - cache - gyms/30513
    [35] => 2026-01-02 18:32:09 - internal - gyms/30513
    [36] => 2026-01-02 18:32:10 - 200 - teams/409379/games?order=asc&season=2025&limit=100
    [37] => 2026-01-02 18:32:10 - internal - teams/409379/registrations?season=2025
    [38] => 2026-01-02 18:32:10 - internal - gyms/30614
    [39] => 2026-01-02 18:32:10 - cache - gyms/435744
    [40] => 2026-01-02 18:32:10 - cache - gyms/463159
    [41] => 2026-01-02 18:32:10 - internal - gyms/30614
    [42] => 2026-01-02 18:32:10 - cache - gyms/30395
    [43] => 2026-01-02 18:32:10 - internal - gyms/30614
    [44] => 2026-01-02 18:32:10 - 200 - teams/409379/table?season=2025
    [45] => 2026-01-02 18:32:10 - cache - leagues/114/groups?season=2025
    [46] => 2026-01-02 18:32:10 - cache - leagues/114/groups/4/games?season=2025&order=asc&limit=200
    [47] => 2026-01-02 18:32:10 - 200 - leagues/114/groups/4/table?season=2025
)

Erklärungen: In jeder Kolonne wird die Zeit der Anfrage, der HTTP Status Code resp. die Quelle sowie der Angefragte Service mit seinen Parametern aufgeführt. Mögliche Werte für die Quelle: