Re: Dettach problem

From: Date: Tue, 13 Jun 2006 16:52:18 +0000
Subject: Re: Dettach problem
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-237910@lists.php.net to get a copy of this message
pure guess work coming up... grape wrote: > Hi all, > > I would like run a php-script via CLI which outputs some information to > stdout, and then go into background. I use code similar to this to fork > and to dettach the child I/O from the TTY (some error handling removed > to improve readability) > > <? > echo "Hello from parent\n"; > > if(pcntl_fork()) { > exit; > } > > posix_setsid(); > > fclose( STDIN ); > fclose( STDOUT ); > fclose( STDERR ); > > if(pcntl_fork()) { > exit; > } what happens if you move the fclose() statements after this if() statement? is STDIN et al actually defined? they should be - but we all theory and practice often live on different planets :-) are you using the same sapi in both version (i.e. are you maybe using CGI now iso CLI?) > > echo "This message should NOT go to stdout of parent process\n"; > ?> > > It works fine using PHP version 5.0.4, but when using PHP version 5.1.2 > the output of the child ("This message....") goes to stdout of the > parent process. So if I do: > > php test.php >output > > Using PHP 5.1.2, the file contains: > > --------------- > Hello from parent > This message should NOT go to stdout of parent process > --------------- > > Can anybody explain this? > I run FreeBSD 6.0-RELEASE... > > Regards, > > Grape >

« previous php.general (#237910) next »