Re: Re: Pass variable to pcntl_fork child
| From: | Uggla Henrik | Date: | Wed, 02 Jul 2014 15:19:25 +0000 |
| Subject: | Re: Re: Pass variable to pcntl_fork child | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-323593@lists.php.net to get a copy of this message | ||
________________________________________
Från: Jim Giner [jim.giner@albanyhandball.com]
Skickat: den 2 juli 2014 16:41
Till: php-general@lists.php.net
Ämne: [PHP] Re: Pass variable to pcntl_fork child
On 7/2/2014 5:40 AM, Uggla Henrik wrote:
> Hi!
>
> I've tried the following code but the $call variable is not available in the pcntl_fork
> child. Searching the web, I've found posts that claim that all variables defined before
> pcntl_fork are copied to the child. I've also found posts that claim that no variables are
> passed/copied to the child. So, which of them is true and how should I correct my code to make it
> work?
>
> regards
> Henrik
>
>
>
> $call = str_replace('@@', '&', $_GET['call']);
>
> if ($pid = pcntl_fork())
> {
> $previousCalls=file("calls.txt", FILE_IGNORE_NEW_LINES |
> FILE_SKIP_EMPTY_LINES);
> if (!in_array($call, $previousCalls))
> {
> file_put_contents("calls.txt", $call."\n", FILE_APPEND);
> }
> }
> else
> {
> function displayUrl($url)
> {
> $ch = curl_init($url);
> curl_setopt ( $ch, CURLOPT_HEADER, 1);
> curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
> $curlResult = curl_exec($ch);
> curl_close($ch);
> list($headers,$content) = explode("\r\n\r\n",$curlResult,2);
> foreach (explode("\r\n",$headers) as $hdr)
> {
> if ($hdr != 'Transfer-Encoding: chunked')
> {
> header($hdr);
> }
> }
> echo $content;
> }
> displayUrl($call);
> }
>
1 What's a child?
2 You must use == in your if condition.
3 ??? Why do you have a function defined in your else clause???
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
3. I did that to make it easier to follow the code.
/H