beNNi: html-Datei mit PHP erzeugen

Hallo..

ich habe mit php eine dynamische Ausgabe erzeugt... Es werden sozusagen (eine Art Rechnung) mithilfe von PHP ausgegeben...

Da ich jetzt die ausgegebene Rechnung seperat als Datei abspeichern möchte ( nicht nur in der DB), würde ich gern diese als HTML oder Text auf dem Server hinterelgen.

Ich hab es schon versucht mit file_get_contents, jedoch wird da der ganze Code der PHP-Datei ausgelesen, und ich will ja das gerade ausgegebene (was von der PHP-Datei erzeugt wurde) seperate speichern.

Gruß

  1. Hellihello

    vielleicht hilft dir output-buffering.

    ob_start();
    echo "das hier wird gebuffered";
    $my_buffer_output = ob_get_clean();
    file_put_contents ("irgendwo",$my_buffer_output);

    ungetestet. das prinzip stimmt aber .

    Dank und Gruß,

    frankx

    --
    tryin to multitain  - Globus = Planet != Welt
    1. Huhu,

      danke für den Tipp...

      Jedoch kann ich damit ja nur den PHP-Text speichern....ich erzeuge Anhand mit PHP eine Datei, die bei jedem Aufruf verschieden ist.... Diese sollte jetzt genau in der derzeitigen Ausgabe ( in HTML-Form, also ohne PHP-Code) abgespeichert werden....

      Gruß

      1. Hellihello

        ???

        ob_start();
        include ("relevante_datei.inc.php");
        $my_buffer_content = ob_get_clean();
        echo $my_buffer_content; // gibt das, was an html-code von der ...inc.php erzeugt wird.

        Dank und Gruß,

        frankx

        --
        tryin to multitain  - Globus = Planet != Welt
        1. Dankö, aber jetzt bekomm ich die Meldung:

          Fatal Erro: Allowed memory size of 33554432 bytes exhausted ( tried to allocate 393216 bytes...

          kann man da was ändern oO

    2. Hello Frank,

      vielleicht hilft dir output-buffering.

      ob_start();
      echo "das hier wird gebuffered";
      $my_buffer_output = ob_get_clean();
      file_put_contents ("irgendwo",$my_buffer_output);

      ungetestet. das prinzip stimmt aber .

      Dann hätte der Link auf das Thema vielleicht auchnoch geholfen?
      http://www.php.net/manual/en/ref.outcontrol.php

      @benni:
      Durch das Output Buffering werden alle Ausgaben der gesamten Ressource, die nach dem ob_start() erzeugt werden, im Buffer zurückgehalten.

      Die Ausgaben des HTTP-Bodys, also nicht die HTTP-Header der Seite, können dann mit unterschiedlichen Funktionen ausgelesen werden und selbstverständlich auch in einer Datei abgespeichert werden.

      Das Output-Buffering ist schachtelbar. Das bedeutet, dass man in unterschiedlichen Ebenen Teile des Dokumentes abfangen kann.

      Ein "out of memory" habe ich dabei aber im Normalbetrieb noch nicht erhalten. Das könnte daran liegen, dass Du ob_start() eventuell in einer Schleife aufgerufen hast?

      Liebe Grüße aus Syburg bei Dortmund

      Tom vom Berg

      --
      Nur selber lernen macht schlau
      http://bergpost.annerschbarrich.de
      1. Hallo Frank,

        vielen Dank für deine Antwort.....

        Also in einer Schleife hab ich es nicht laufen, die PHP-Datei besteht aus etwa 2000 Zeilen....

        Ich konnte dem Apache-Server dann mehr RAM zuteilen, jedoch lädt das Script endlos ohne erfolg! (Arbeite derzeit noch auf xampp)

        Komisch :-/

        1. Zusatz: Mit einem anderen Script funktioniert das..aber leider nicht mit der Rechnung, bei der es gehen soll :-/

          Gibt es noch einen anderen Weg?

          Gruß

          1. Hello,

            Zusatz: Mit einem anderen Script funktioniert das..aber leider nicht mit der Rechnung, bei der es gehen soll :-/

            Gibt es noch einen anderen Weg?

            solange wir Dein Konzept bzw. den Code nicht kennen, ist das schwer zu beurteilen.

            Wenn man konsequent nach dem EVA-Prinzip arbeitet, und alle Ausgaben erst in eine Ausgabevariable schreibt, benötigt man die Output-Buffer-Funktionen gar nicht. Die sind nur für "Schmuddelprogrammierer" notwendig ;-)

            Liebe Grüße aus Syburg bei Dortmund

            Tom vom Berg

            --
            Nur selber lernen macht schlau
            http://bergpost.annerschbarrich.de