Es ist halt eine klassische Alina-Aufgabenstellung:
Man erhält eine bizarr anmutende Aufgabenstellung wo man sich fragt: Wo in welchem Zusammenhang taucht so ein Konstrukt auf und warum genau soll die Fragestellung die Lösung zu irgendeinem Problem sein?
Das eigentliche Krux: Niemand - bis auf Alina - weiß um die Hintergründe zur Fragestellung.
Keiner kennt die Ausgangslage, was für Daten das sind, wo sie herkommen und was für ein tatsächliches Problem gelöst werden soll - nichts.
Auch auf Nachfrage verbleibt es auf dieser Ebene.
Da alle hier dennoch Spaß am Tüfteln haben, machen wir uns dennoch fleißig daran die "Aufgabenstellung" mit Lösungswegen zu bedenken.
Ich bin mir aber sicher, dass wenn wir die jeweils tatsächlichen Hintergründe mal erfahren würden dann kämen wir auf was völlig anderes (mutmaßlich viel besseres) hinaus.
So hingegen trifft jeder seine Mutmaßung um eine Lösung für etwas zu präsentieren, was wohl bereits im Ansatz ganz anders angegangen werden könnte.
Wir wissen fast nichts und müssen daher primär auf Mutmaßungen zurückgreifen. Ich mache dies mal exemplarisch:
- Aufgabe: Anzahl der Zeilen zählen, welche 192 Zeichen lang sind
- Alle Zeilen sind 192 Zeichen lang, nur die letzte Zeile kann weniger Zeichen enthalten
- Als Zeilenumbruch wird @CRLF verwendet
- @CRLF wird auch an die letzte Zeile angehangen, mindestens wenn sie 192 Zeichen lang ist
- Alle verwendetenZeichen werden als 1 Byte-kodiert (also kein ä in UTF-8 oder sowas)
- Es gibt kein BOM
Wenn man diese Mutmaßungen aufstellt, dann wäre die kürzeste und weitaus schnellste Methode diese: $iCount = Floor(FileGetSize("test.txt") / 194).
Aber es kann auch genauso völlig am Thema vorbeigehen.
Das schadet im Grunde nicht, da wir alle damit meist viel Spaß haben beim gegenseitig Lösungen um die Ohren hauen.
Aber tatsächlich ist es dann doch ziemlich unbefriedigend derart im Nebel zu stochern und zu wissen, dass man für das eigentliche Problem wohl eine weitaus bessere Herangehensweise entwickeln könnte, wenn man das eigentliche Problem denn kennen würde.