Julius: ob_start() zweimal hintereinander aufrufen

Beitrag lesen

Hallo Martin,

ob_start();
include('testdatei.php');
$variable= ob_get_clean();
ob_end_clean();

warum rufst du ob_end_clean() zweimal auf?

ob_end_clean löscht zwar ebenfalls den Pufferspeicher, beendet aber auch das Puffern, das sollten laut Doku zwei verschiedene paar Schuhe sein:

ob_end_clean — Clean (erase) the output buffer and turn off output buffering ob_get_clean — Get current buffer contents and delete current output buffer

Quelle: Output Control Functions

Weniger doppelt gemoppelt wäre vielleicht:

$variable = ob_get_contents();
ob_end_clean();

Gruß
Julius