Datei einlesen - was geht am schnellsten?

  • Hallo! :)

    Hab 4 brauchbare Möglichkeiten gefunden eine Datei in eine Variable zu quetschen.

    Jetzt stellt sich halt die Frage nach der Performance.

    Hintergrund ist dass ich mir jetzt auch endlich mal angewöhnen will php und html besser zu trennen, aber nicht sollche "Bomben" wie Smarty benutzen will.

    Naja is ja eigentlich auch egal :D
    Denke mal da ich im Anschluss an das Auslesen eh mit ner Schleife arbeite is Variante 4 für den Hintern :lol:

    Gruß, Donkey

  • file_get_contents dürfte am schnellsten sein. Was dein fopen() da macht, solltest dich ma selbst fragen - wird nämlich nicht benutzt.
    Wenn du auch im Content PHP benutzen willst, wäre Include eine Alternative. Dürfte sich bei der Performance auch nicht so stark auswirken.

    /p.s. indem Fall ist es aber so ziemlich egal - es ist nur 1 File... Die paar milisekunden fallen da nicht ins Gewicht.

  • PHP
    <?php echo [COLOR=#000000][COLOR=#0000BB]file_get_contents[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]$file_path[/COLOR][COLOR=#007700]); ?>[/COLOR][/COLOR]


    Wie Grevas schon sagte ist dies am schnellsten außerdem
    kann PHP Code verwendet werden, sprich du brauchst keinen INCLUDE

    Include != schneller == filegetcontents:D


    mfg

  • file_get_contents dürfte am schnellsten sein. Was dein fopen() da macht, solltest dich ma selbst fragen - wird nämlich nicht benutzt.

    Oh da hab ich wohl gepennt :D

    Danke für die Antworten.

    Ein include selber nütz mir glaub ich nicht so viel, da ich ja die ganzen Platzhalter mit den Werten füllen muss, die das Script dann ausspuckt.
    Was weiss ich... aus ner DB-Operration oder so....

    So in der art vielleicht:

    PHP
    <?php
    function replace_wildcards($path, $arr){
        $content = file_get_contents($path);
        foreach($arr as $wildcard => $replacement){
            $content = str_replace($wildcard, $replacement, $content);
        }
        return $content;
    }
    ?>
  • Hm...
    Dann hab ich wieder php-Code in der HTML - Gut nicht viel...

    Aber das verbessert vemutlich die Performance, weil das Auslesen der Datei und die Schleife wegfallen.

    Danke jedenfalls ;)

    Naja also Performance ist hier eher nicht das Problem

    Wichtig bei einer TPL Engine ist nicht das kein PHP Code in der TPL steht sondern das die Technik und die Ausgabe von einander getrennt sind

    Smarty und Co sind meiner Meinung nach ein "Schwachsinn", man erlent eine neue Sprache nämlich der der TPL Engine, diese hat auch schleifen, ifs etc, da kann man dann auch gleich phpcode verwenden und mit nix parsen


    mfg

  • Word.
    Mir hat auch mal einer versucht Smarty anzudrehen, konnte mir auch nicht sagen wo der Vorteil sein soll.
    "Ja das und soo" -> "kann ich auch mit PHP machen" -> "jaaaa... ..."
    Tse :rolleyes:

    Der einzige Unterschied ist, dass man mit Smarty dazu gezwungen wird. Mit PHP ist die Versuchung manchmal da.

  • Dateigröße ~ 6MB

    Gruß crAzywuLf :D

    2 Mal editiert, zuletzt von crAzywuLf (6. April 2010 um 09:31)