$lines = file ('L2.dat');
foreach ( $lines as $line ) {
// print $line."
";
if ( preg_match("/\s*windowtitle\s*=\s*(\S.*)$/i", $line, $treffer ) ) { $title = trim($treffer[1]); }
if ( preg_match("/\s*liga\s*=\s*(\S.*)$/i", $line, $treffer ) ) { $liga = trim($treffer[1]); }
if ( preg_match("/\s*<\s*team\s*(\d+)\s*>\s*$/i", $line, $treffer ) ) { $ti = trim($treffer[1]); /* print "Teamindex = $ti
\n"; */ }
if ( $ti ) {
if ( preg_match("/\s*name\s*=\s*(\S.*)$/i", $line, $treffer ) ) { $Team[$ti] = trim($treffer[1]); }
if ( preg_match("/\s*namekurz\s*=\s*(\S.*)$/i", $line, $treffer ) ) { $Teamkurz[$ti] = trim($treffer[1]); }
if ( preg_match("/\s*nameabk\s*=\s*(\S.*)$/i", $line, $treffer ) ) { $Teamabk[$ti] = trim($treffer[1]); }
if ( preg_match("/\s*spieler\s*=\s*(\S.*)$/i", $line, $treffer ) ) { $Spieler[$ti] = split( ",", $treffer[1] ); }
}
if ( preg_match("/\s*<\s*spieltag\s*(\d+)\s*>\s*$/i", $line, $treffer ) ) { $st = trim($treffer[1]); /*print "Spieltag = $st
\n"; */ }
if ( $st ) {
if ( preg_match("/\s*titel\s*=\s*(\S.*)$/i", $line, $treffer ) ) { $Titel[$st] = trim($treffer[1]); }
if ( preg_match("/\s*kampf\s*(\d+)\s*=\s*(\S.*)$/i", $line, $treffer ) ) {
$ki = $treffer[1];
$kd = $treffer[2];
// print "Kampfdaten: $kd
\n";
if ( preg_match("/\s*(.*)\s*\-\s*(.*?)\s*\|\s*(\d*)\s*(\+|\-)?\s*:?\s*(\d*)\s*(\+|\-)?\s*$/i", $kd, $treffer ) ) {
$treffer[1] = trim($treffer[1]);
$treffer[2] = trim($treffer[2]);
// print_r ($treffer);
$ht = 0;
$vt = 0;
for ( $i=1; $i<=10; $i++ ) {
// print "check ($i): '$treffer[1]' == '$Team[$i]' || '$Teamabk[$i]' || '$Teamkurz[$i]'
\n";
if ( $treffer[1] == $Team[$i] || $treffer[1] == $Teamabk[$i] || $treffer[1] == $Teamkurz[$i] ) {
// print "Teamnr 1 = $i
\n";
$ht = $i;
}
// print "check ($i): '$treffer[2]' == '$Team[$i]' || '$Teamabk[$i]' || '$Teamkurz[$i]'
\n";
if ( $treffer[2] == $Team[$i] || $treffer[2] == $Teamabk[$i] || $treffer[2] == $Teamkurz[$i] ) {
// print "Teamnr 2 = $i
\n";
$vt = $i;
}
}
if ( !$ht ) { print "Spieltag $st, Kampf $ki: hometeam konnte nicht zugewiesen werden. Name = $treffer[1]
\n"; }
elseif ( !$vt ) { print "Spieltag $st, Kampf $ki: visitingteam konnte nicht zugewiesen werden. Name = $treffer[2]
\n"; }
else {
$idxHT = 2*($ki-1);
$idxVT = $idxHT+1;
$Plan[$st][$idxHT] = $ht;
$Plan[$st][$idxVT] = $vt;
$Erg[$ht][$vt] = $treffer[3];
$Zusatz[$ht][$vt] = $treffer[4];
$Erg[$vt][$ht] = $treffer[5];
$Zusatz[$vt][$ht] = $treffer[6];
// print "
\$Plan[$st][$idxHT] = $ht
\$Plan[$st][$idxVT] = $vt
\$Erg[$ht][$vt] = $treffer[3]
\$Erg[$vt][$ht] = $treffer[5]
";
}
}
}
}
}
// print_r ( $Plan );
$x=" ";
/* Teamnamen in der Reihenfolge in der sie in der Tabelle erscheinen sollen */
// $Team [1..10]
/* kurze Teamnamen für Tabelle */
// $Teamkurz [1..10]
/* Abkürzung der Teamnamen für Tabellenkopf */
// $Teamabk [1..10]
/* Die Spieler jedes Teams (Reihenfolge wie oben)*/
// $Spieler [1-10] [0-8];
/*
*/
/*Titel für die Kämpfe eingeben über denen ein Titel erscheinen soll*/
// $Titel [1..9];
/* Spielplan der einzelnen Spieltage (1. gg 2., 3. gg 4. ... ) */
//$Plan = array(9);
//
//$Plan[0] = array (1=>9, 5, 7, 8, 0, 4, 3, 2, 6, 1);
//$Plan[1] = array (1=>8, 9, 4, 7, 2, 0, 1, 3, 5, 6);
//$Plan[2] = array (1=>9, 4, 7, 2, 0, 1, 3, 6, 8, 5);
//$Plan[3] = array (1=>2, 9, 1, 7, 6, 0, 5, 3, 8, 4);
//$Plan[4] = array (1=>9, 1, 7, 6, 0, 3, 2, 8, 4, 5);
//$Plan[5] = array (1=>6, 9, 3, 7, 5, 0, 8, 1, 4, 2);
//$Plan[6] = array (1=>9, 3, 7, 0, 6, 8, 1, 4, 2, 5);
//$Plan[7] = array (1=>0, 9, 5, 7, 8, 3, 4, 6, 2, 1);
//$Plan[8] = array (1=>9, 7, 0, 8, 3, 4, 6, 2, 1, 5);
/* Ergebnisse mit leerzeichen initialisieren damit der Tabellenrahmen erscheint */
/* Wenn Team 1 gegen 0 20:10 spielt muß in Erg [1][0]=20 und Erg [0][1]=10 rein */
//$Erg = array(10);
//// "BadK","BadH","DA 3","Drei","Kob","Kron","Makk","SB65","SB84","WI T");
//// 0 1 2 3 4 5 6 7 8 9
//$Erg[0] = array( 1=>$x,25,14,25, 6,22,22, 18, 19, 20);
//$Erg[1] = array( 1=>3, $x, 11,11, 9, 16,10, 8, 3, 3);
//$Erg[2] = array(1=>16, 19, $x,17,22, 20, 20,14,24,22);
//$Erg[3] = array( 1=>2,19,13, $x, 22,13, 7,13, 5, 9);
//$Erg[4] = array(1=>24, 21, 8, 8, $x,15, 9,16,22,13);
//$Erg[5] = array( 1=>8, 14, 10,17,15, $x,14, 2,15, 6);
//$Erg[6] = array( 1=>8,20, 10,23, 21,16, $x,25, 25,12);
//$Erg[7] = array( 1=>12,22,16,17,14, 25, 2, $x,16, 24);
//$Erg[8] = array( 1=>11,25, 6, 25, 8,15, 2,14, $x,16);
//$Erg[9] = array( 1=>10,25, 8, 21,16,24,18, 6,14, $x);
/*Für das Plus hinter 15*/
//$Zusatz = array(10);
//$Zusatz[0] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,$x,$x);
//$Zusatz[1] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,$x,$x);
//$Zusatz[2] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,$x,$x);
//$Zusatz[3] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,$x,$x);
//$Zusatz[4] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,$x,$x);
//$Zusatz[5] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,"-",$x);
//$Zusatz[6] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,$x,$x);
//$Zusatz[7] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,$x,$x);
//$Zusatz[8] = array(1=>$x,$x,$x,$x,$x,"+",$x,$x,$x,$x);
//$Zusatz[9] = array(1=>$x,$x,$x,$x,$x,$x,$x,$x,$x,$x);
/* zur Berechnung Quotient */
$AnzErg= array(1=>0,0,0,0,0,0,0,0,0,0);
/* Summme berechnen */
$Summe = array(1=>0,0,0,0,0,0,0,0,0,0);
for ($i=1; $i<=10; $i++)
{
for ($j=1; $j<=10; $j++)
{
if ($Erg[$i][$j] != $x)
{
$Summe[$i] += $Erg[$i][$j];
$AnzErg[$i] += 1;
}
}
}
/* Quotient berechnen */
$Quotient= array(1=>0,0,0,0,0,0,0,0,0,0);
for ($i=1; $i<=10; $i++)
{
if ($AnzErg[$i] != 0)
{
$Quotient[$i] = $Summe[$i] / $AnzErg[$i];
}
}
/* Rang berechnen */
$Rang=array(1=>1,1,1,1,1,1,1,1,1,1);
for ($i=1; $i<=10; $i++)
{
for ($j=1; $j<=10; $j++)
{
// Für jedes Team, dessen Quotient höher ist, diesen Rang erhöhen.
if ($Quotient[$j]>$Quotient[$i]) { $Rang[$i]++; }
}
}
/* Falls 2 den gleichen Rang haben, direkten Vergleich, IMP-quotient später */
for ($i=1; $i<=10; $i++)
{
for ($j=1; $j<=10; $j++)
{
if (($Rang[$i]==$Rang[$j]) && ($i!=$j))
{
if ($Erg[$i][$j]>$Erg[$j][$i] ) { $Rang[$j]++; }
if ($Erg[$j][$i]>$Erg[$i][$j] ) { $Rang[$i]++; }
}
}
}
/* Nach der Rang Berechnung Quotient fuer Ausgabe formatieren */
for ($i=1; $i<=10; $i++)
{
$Quotient[$i] = round( $Quotient[$i], 2 );
}
/* Damit die Teams in der Tabelle in richtigen Reienfolge stehen */
$Reihe=array(1=>10,10,10,10,10,10,10,10,10,10);
for ($i=1; $i<=10; $i++)
{
if ( $Reihe[$Rang[$i]] == 10 ) {
$Reihe[$Rang[$i]] = $i;
}
else {
$j=0;
while ( $Reihe[$Rang[$i]+$j]!=10 ) $j++;
$Reihe[$Rang[$i]+$j]=$i;
}
}
?>
/* Ausgaben */
/*Überschrift*/
echo ("$liga
");
/* Ergebnistabelle */
echo("");
echo("$Teamname | ");
for($i=1; $i<=10; ++$i) {
echo("" . $Teamabk[$Reihe[$i]] . " | ");
}
echo("Summe | ");
echo("Quotient | ");
echo("Rang | ");
/*Spalten der Tabelle*/
for($i=1; $i<=10; ++$i)
{
echo("");
echo("" . $Teamkurz[$Reihe[$i]] . " | ");
for ($j=1; $j<=10; $j++)
{
if ($i==$j) { echo(""); }
else { echo(" | "); }
echo($Erg[$Reihe[$i]][$Reihe[$j]].$Zusatz[$Reihe[$i]][$Reihe[$j]]);
echo(" | ");
}
echo("" . $Summe[$Reihe[$i]] . " | ");
echo("" . $Quotient[$Reihe[$i]] . " | ");
echo("" . $Rang[$Reihe[$i]] . ". | ");
echo("
");
}
echo("
");
echo("
");
echo("Zurück zur RMTL-Seite");
echo("
");
/* Kämpfe */
for($i=1; $i<=9; ++$i)
{
if ($Titel[$i]!="") { echo("".$Titel[$i]."
"); }
echo("");
for ($j=0; $j<9; $j+=2)
{
echo("".$Team[$Plan[$i][$j]]." | ");
echo("".$Team[$Plan[$i][$j+1]]." | ");
echo("".$Erg[$Plan[$i][$j]][$Plan[$i][$j+1]].$Zusatz[$Plan[$i][$j]][$Plan[$i][$j+1]]." : ".$Erg[$Plan[$i][$j+1]][$Plan[$i][$j]].$Zusatz[$Plan[$i][$j+1]][$Plan[$i][$j]]." | ");
}
echo("
");
echo("");
}
echo("Teilnehmerliste
");
for($i=1; $i<=10; $i++)
{
echo("".$Team[$i]."");
for($j=0; $j
");
// print_r ( $Spieler );
?>