Hallo
Ich möchte meinegesamten html Ausgaben in einer Varibale speichern. Das geht bis auf Dateien die auch einen PHP Code inne haben.
$output= file_get_contents("testdatei.php");
so ist nur der reine Code in meiner $output Variable
Natürlich, file_get_contents
liest den Inhalt einer Datei in einen String ein. Der Inhalt ist bei einer Nichtbinärdatei der in der Datei befindliche Text.
$output= include("testdatei.php");
so wird er aber sofort ausgführt und ausgegeben, aber nicht in die Variable $output geschrieben.
include
ist keine Funktion mit einem Rückgabewert. Es wird eine Datei in den aktuellen Codekontext eingebunden. Handelt es sich um PHP-Code, wird er ausgeführt.
Wie schaffe ich es das die Datei zwar ausgeführt wird, aber nicht ausgegeben, sondern eben die Ausgabe in die Variable $output geschrieben wird.
Erzeuge im eingebundenen Code die Ausgabe.
<?php
// testdatei.php
$output = '<h1>Meine Ausgabe</h1>';
$output .= '<p>Hier steht drin, was immer drinstehen soll.</p>';
?>
<?php
// mache irgendwas
include("testdatei.php")
if (isset($output)) { // eventuell weitere Prüfungen
echo $output;
} else {
echo '<p>Es ist keine vorbereitete Ausgabe vorhanden.</p>';
}
?>
Tschö, Auge
Wir hören immer wieder, dass Regierungscomputer gehackt wurden. Ich denke, man sollte die Sicherheit seiner Daten nicht Regierungen anvertrauen.
Jan Koum, Mitgründer von WhatsApp, im Heise.de-Interview