ID: 8282
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
-Status: Open
+Status: Closed
Bug Type: Feature/Change Request
Operating System: Linux
PHP Version: 4.0.3pl1
New Comment:
this is, indeed, exactly the sort of thing that output buffering is
for.
Previous Comments:
------------------------------------------------------------------------
[2001-01-10 02:01:13] [EMAIL PROTECTED]
so why don't you have your own
function quiet_eval($code)
{
ob_start();
eval($code);
$retval = ob_get_contents();
ob_end_clean();
return $retval;
}
as I understand it, zend output buffers can be nested, so no issues
with it interfering with existing buffers.
------------------------------------------------------------------------
[2000-12-15 14:50:32] [EMAIL PROTECTED]
I guess this is more of a hack than anything, but I really needed
eval()'s code NOT to be displayed right away. So I used ob_start(),
ob_get_contents(), and ob_end_clean().
<?php
$stuff = "Hello, ";
ob_start(); // start buffer
eval("print 'World!';"); // execute code
$retval = ob_get_contents(); // return executed code
ob_end_clean(); // delete the buffer
print $stuff.$retval;
?>
This would print "Hello, World!" instead of "World!Hello, ".
Is there a function to do this already?
Thanks,
Chris
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=8282&edit=1