PHP Gesamtlänge Script ausgeben?
Pfanm
- php
0 Alexander Brock0 Vinzenz Mai0 RFZ0 EisFuX
Hallo,
ich suche einen Weg die länge eines PHP Scripts irgendwie auszugeben (in Zeilen, Wörter oder so). Ich frage nur mal aus neugierde weil ich dazu nichts gefunden habe. Sinn hätte es keinen größeres außer meine neugierde zu befriedigen :-). Sicher kann ich es auch Manuell tun aber bei paar includes ist es recht aufwendig. Kennt jemand einen Weg dazu?
Gruß
Pfann
Hallo Freunde des gehobenen Forumsgenusses,
ich suche einen Weg die länge eines PHP Scripts irgendwie auszugeben (in Zeilen, Wörter oder so).
Schreib dir halt eine Funktion dafür, wo ist das Problem?
Du könntest file() und count() oder file_get_contents(), explode() und count() verwenden.
Gruß
Alexander Brock
Hallo Pfann,
ich suche einen Weg die länge eines PHP Scripts irgendwie auszugeben (in Zeilen, Wörter oder so).
schon einmal an die Kombination von file_get_contents() und http://www.php.net/manual/de/function.str-word-count.php@str_word_count() gedacht. Wie Du das weiter ausbaust, das bleibt Dir überlassen.
Wenn Du lieber Zeilen zählen willst, so könntest Du stattdessen file() verwenden. Bleibt die Behandlung von Leerzeilen :-)
In beiden Fällen fehlt noch die Strategie, um herauszufinden, wieviele und welche Dateien Dein Skript insgesamt verwendet. Viel Spass dabei.
Freundliche Grüße
Vinzenz
ich suche einen Weg die länge eines PHP Scripts irgendwie auszugeben (in Zeilen, Wörter oder so). Ich frage nur mal aus neugierde weil ich dazu nichts gefunden habe. Sinn hätte es keinen größeres außer meine neugierde zu befriedigen :-). Sicher kann ich es auch Manuell tun aber bei paar includes ist es recht aufwendig. Kennt jemand einen Weg dazu?
Die Länge des Scripts selbst, oder die Länge der Ausgabe des Scripts? Da du die Includes ansprichst, vermutlich die Ausgabe des Scripts oder?
Falls ja, setz dich mal mit ob_start() und ob_get_contents() auseinander, so kannst du nämlich am Ende des Scripts die komplette bisherige Ausgabe in einen String laden und anaysieren.
greetz RFZ
Hallo Pfann,
ich suche einen Weg die länge eines PHP Scripts irgendwie auszugeben (in Zeilen, Wörter oder so). Ich frage nur mal aus neugierde weil ich dazu nichts gefunden habe. Sinn hätte es keinen größeres außer meine neugierde zu befriedigen :-). Sicher kann ich es auch Manuell tun aber bei paar includes ist es recht aufwendig. Kennt jemand einen Weg dazu?
Mir ist keine fertige Funktion dafür bekannt. Und um die Bytelänge eines Scripts zu berechnen, kannst du alle PHP-Funktionen verwenden, die die Größe einer Datei zurückgeben. Das simpelste Beispiel ist wohl
filesize().
Schwieriger zu lösen wird das Ganze, wenn du "Includes" (also mit require() oder include() usw. eingebundene Script-Bestandteile) mitzählen willst. Einfach die Datei des Haupt-Scripts laden und alle include-Befehle und Verwandten zählen, geht nicht, denn es könnten sich ja auch welche in Kommentaren oder String-Literalen befinden. Außerdem sollten mit include_once() oder require_once() eingebundene Scripts nur einmal gezählt werden. Um gültige include-Anweisungen zu finden, könntest du die Script-Datei mit file_get_contents() laden und dann mit den Tokenizer-Befehlen bearbeiten. Die liefern für die verschiedenen Include-Anweisungen speziell markierte Token(s). Danach darfst du noch die Namen der "includeten" Script-Dateien herauspulen und schließlich das Ganze rekursiv aufrufen, denn die "includeten" Scripts könnten ja ihrerseits wieder andere Scripts "includen".
Das wäre zumindest ein erster Lösungsansatz ...
MffG
EisFuX