11.6. Reading BuffersOutput buffers are two-way affairs, which means you can read from them as well as write to them. So far we have only covered writing data; reading that data back is done by using the ob_get_contents( ) function. The ob_get_contents( ) function takes no parameters and returns the full contents of the most recently opened buffer. For example: $result = mysql_query("SELECT * FROM EmployeeTable WHERE ID = 55;"); while ($row = mysql_fetch_assoc($result)) { extract($row); print "Some info A: $SomeInfoA\n"; print "Some info B: $SomeInfoB\n"; print "Some info C: $SomeInfoC\n"; // ...[snip]... print "Some info Z: $SomeInfoZ\n"; } That script sends its data (presumably lots of employee data) to the screen. With output buffering, we can change it to save to a file, like this: ob_start( ) $result = mysql_query("SELECT * FROM EmployeeTable WHERE ID = 55;"); while ($row = mysql_fetch_assoc($result)) { extract($row); print "Some info A: $SomeInfoA\n"; print "Some info B: $SomeInfoB\n"; print "Some info C: $SomeInfoC\n"; //...[snip]... print "Some info Z: $SomeInfoZ\n"; } $output = ob_get_contents( ); ob_end_clean( ); file_put_contents("employee.txt", $output); That scripts treats output like a scratch pad, saving it to a file rather than sending it to output. |