diff options
author | emkael <emkael@tlen.pl> | 2014-07-03 23:53:27 +0200 |
---|---|---|
committer | emkael <emkael@tlen.pl> | 2014-07-03 23:53:40 +0200 |
commit | 3bedc052976b8d78bd465183bd4a1d4c756288cf (patch) | |
tree | 1d10f7d29f33bab2bbc7392edc6868f9497ac0c5 /how.php | |
parent | 51541830f6086e9d82d8828b2d36f13ad19ba873 (diff) |
utf-8 encoding
Diffstat (limited to 'how.php')
-rw-r--r-- | how.php | 38 |
1 files changed, 19 insertions, 19 deletions
@@ -1,17 +1,17 @@ <?php /** - * Skrypt parsuj¹cy KoPS-owy plik HOWELL.DAT do JSONa ³ykalnego przez aplikacjê. + * Skrypt parsujÄ…cy KoPS-owy plik HOWELL.DAT do JSONa Å‚ykalnego przez aplikacjÄ™. * * Format pliku movements.json: - * - s³ownik klucz-wartoœæ - * - klucz s³ownika: X-Y (X - liczba sto³ów, Y - liczba rund; umowne, parsowane dla menu) - * - wartoœci - struktura: - * - tables: INT, liczba sto³ów + * - sÅ‚ownik klucz-wartość + * - klucz sÅ‚ownika: X-Y (X - liczba stołów, Y - liczba rund; umowne, parsowane dla menu) + * - wartoÅ›ci - struktura: + * - tables: INT, liczba stołów * - rounds: INT, liczba rund - * - sets: ARRAY[INT], pocz¹tkowe numery sto³ów dla kolejnych kompletów - * - movement: ARRAY[STRING], ruch pary nr 1 (pierwszej z par ruchomych), okreœlony kolejnymi pozycjami formatu /[0-9]+[NE]/ - * - positions: ARRAY[INT], pocz¹tkowe numery par na kolejnych pozycjach + * - sets: ARRAY[INT], poczÄ…tkowe numery stołów dla kolejnych kompletów + * - movement: ARRAY[STRING], ruch pary nr 1 (pierwszej z par ruchomych), okreÅ›lony kolejnymi pozycjami formatu /[0-9]+[NE]/ + * - positions: ARRAY[INT], poczÄ…tkowe numery par na kolejnych pozycjach **/ // Dzielimy plik po liniach "*-----..." @@ -19,32 +19,32 @@ $file = preg_split('/\*-+/', file_get_contents('howell.dat')); $movements = []; for ($i = 0; $i < count($file); $i++) { // segmenty o nieparzystym indeksie (drugi, czwarty itp.) to dane rotacji - // parsowane s¹ zawsze PO sparsowaniu segmentu o parzystym indeksie, wiêc poni¿ej jest trochê zmiennych ustawianych jeszcze ni¿ej + // parsowane sÄ… zawsze PO sparsowaniu segmentu o parzystym indeksie, wiÄ™c poniżej jest trochÄ™ zmiennych ustawianych jeszcze niżej if ($i%2) { $matches = []; - preg_match_all('/(\d+)/', $file[$i], $matches); // wyci¹gamy wszystkie liczby z rotacji (numery par) - $sets = array_fill(0, $rounds, 0); // tablica kompletów rozdañ + preg_match_all('/(\d+)/', $file[$i], $matches); // wyciÄ…gamy wszystkie liczby z rotacji (numery par) + $sets = array_fill(0, $rounds, 0); // tablica kompletów rozdaÅ„ $positions = []; $table = 1; $set = 0; for ($j = 0; $j < count($matches[1]); $j++) { - if ((int)$matches[1][$j]) { // mamy niezerowy numerek, wiêc jest para + if ((int)$matches[1][$j]) { // mamy niezerowy numerek, wiÄ™c jest para $sets[$set++] = $table++; // zestaw zaczyna na kolejnym stole $positions[] = (int)($matches[1][$j++]); // ustawiamy dwa kolejne numery par $positions[] = (int)($matches[1][$j]); } - else { // mamy zerowy numerek, wiêc jest zbiornica - $sets[$set++] = 0; // zestaw nie zaczyna na ¿adnym stole + else { // mamy zerowy numerek, wiÄ™c jest zbiornica + $sets[$set++] = 0; // zestaw nie zaczyna na żadnym stole } } $movement = []; $lines = ['N','E']; for ($j = $rounds; $j >= 1; $j--) { // tyle par ruchomych, ile rund - $pos = array_search($j, $positions); // odnajdujemy pary ruchome w kolejnoœci X, X-1, ..., 2, 1 - $movement[] = ceil(($pos+1)/2).$lines[$pos%2]; // i ich pozycjê w tablicy $positions t³umaczymy na pozycjê na sali (xN/E), tworz¹c wstêgê rotacji + $pos = array_search($j, $positions); // odnajdujemy pary ruchome w kolejnoÅ›ci X, X-1, ..., 2, 1 + $movement[] = ceil(($pos+1)/2).$lines[$pos%2]; // i ich pozycjÄ™ w tablicy $positions tÅ‚umaczymy na pozycjÄ™ na sali (xN/E), tworzÄ…c wstÄ™gÄ™ rotacji } - // pozosta³e pary - z automatu stacjonarne - // kompilujemy strukturê + // pozostaÅ‚e pary - z automatu stacjonarne + // kompilujemy strukturÄ™ $movements[$id] = [ 'tables' => $tables, 'rounds' => $rounds, @@ -53,7 +53,7 @@ for ($i = 0; $i < count($file); $i++) { 'positions' => $positions ]; } - // segmenty nieparzyste to dane ogólne - liczba rund i sto³ów + // segmenty nieparzyste to dane ogólne - liczba rund i stołów else { $matches = []; preg_match('/.*(-\d+).*RUNDY.*?(\d+).*STOLIKI.*/s', $file[$i], $matches); |