Hey PHP developers! I wrote function to disable STDOUT from the PHP binary. It just sets the php_output_set_status() flag option to disable output. However, I don't know if PHP continues to buffer the output somewhere. Does anyone know? BTW - I've written this function because I want to write a daemon using PHP, but initiating a fork'd process from a TTY still causes PHP to deliver output to the STDOUT. It's true, I could be more "unix-y" about the situation and do: "php script.php &>/dev/null", but I'd rather be lazy and just type "php script.php" and let it daemonize properly. In addition, I know think this disassociates the TTY from STDERR - so runtime errors may still be generated.
PHP_FUNCTION(ob_disable_stdout) { zval **zv_flag; int flag; switch(ZEND_NUM_ARGS()) { case 0: flag = 0; break; case 1: if (zend_get_parameters_ex(1, &zv_flag) == FAILURE) { RETURN_FALSE; } convert_to_long_ex(zv_flag); flag = Z_LVAL_PP(zv_flag); break; default: WRONG_PARAM_COUNT; break; } php_output_set_status(flag); } /* }}} */ -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php