Re: Dettach problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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
> 

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux