Andavos: Dateigröße herrausfinden

Hallo,
kann man mit PHP herrausfinden, wie groß (in Byte oder so) eine Datei ist bzw. die Datei, in der der Befehl ist.

Hab im Archiv/Manuel geguckt und leider nichts gefunden :(.

MFG
Andavos

--
http://www.rpgcommunity.de/clanwissen/index.php Webdesign, PHP, Clan-Aufbau und mehr
  1. Hallo Andavos,

    kann man mit PHP herrausfinden, wie groß (in Byte oder so) eine Datei ist

    Ja. http://de3.php.net/filesize

    bzw. die Datei, in der der Befehl ist.

    Die aktuelle Datei steht in __FILE__. (Achtung: Das ist eine Konstante - KEINE Variable)

    Viele Grüße,
    Christian

    1. Hallo,
      ah danke, mal ausprobieren

      MFG
      Andavos

      --
      http://www.rpgcommunity.de/clanwissen/index.php Webdesign, PHP, Clan-Aufbau und mehr
    2. Hallo,
      meine Unterseiten werden per include... zusammengesetzt.
      Wenn ich jetzt die größe der Datei abfrage, dann zeigt er mir nur die größe der PHP-Datei (des Scripts) an, und die die Gesamte größe, also die die an den Browser gesendet wird.

      Kann ich die auch anzeigen lassen

      MFG
      Andavos

      --
      http://www.rpgcommunity.de/clanwissen/index.php Webdesign, PHP, Clan-Aufbau und mehr
      1. Hallo Andavos,

        und die die Gesamte größe, also die die an den Browser gesendet wird.
        Kann ich die auch anzeigen lassen

        Ja. Du musst die PHP-Ausgabe komplett abfangen, auslesen und dann die Größe bestimmen:

        <?php

        ob_start ();

        // tue etwas, auch include()

        $inhalt = ob_get_contents ();
        $groesse = strlen ($inhalt);

        // ausgeben
        ob_end_flush ();

        ?>

        Ist allerdings etwas langsamer als direktes an den Browser senden.

        Viele Grüße,
        Christian

      2. Hallo!

        meine Unterseiten werden per include... zusammengesetzt.
        Wenn ich jetzt die größe der Datei abfrage, dann zeigt er mir nur die größe der PHP-Datei (des Scripts) an, und die die Gesamte größe, also die die an den Browser gesendet wird.

        Also die Größe der PHP-Datei hat nichts mit der Größe der an den Browser übertragenen Daten zu tun. Wenn ich folgendes schreibe:

        <?php
        echo "hallo";
        ?>

        hat die Datei vermutlich 21 Byte, an den Browser werden allerdings nur 5 byte(+ header) übertragen. Anders herum bei

        <?php
        phpinfo();
        ?>

        Du kannst die Größe der Daten die an den Browser gesendet werden allerdings ermitteln, und zwar indem Du die Ausgabe pufferst, dessen Länge misst, und danach an den Browser schickst.

        Dabei helfern Dir folgende Funktionen:
        http://de3.php.net/outcontrol
        http://de3.php.net/strlen

        Aber auch das sagt nichts darüber aus wieviele bytes jetzt am Ende über die Leitung gehen, denn dazu komen noch Header-Informationen die Du von PHP nicht alle abfragen kannst, und durch Komprimierung kann sich die Zahl der Bytes nochmal erheblich reduzieren.

        Grüße
        Andreas