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