array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'uk', ), 'this' => array ( 0 => 'function.pcntl-fork.php', 1 => 'pcntl_fork', 2 => 'Forks the currently running process', ), 'up' => array ( 0 => 'ref.pcntl.php', 1 => 'Функції PCNTL', ), 'prev' => array ( 0 => 'function.pcntl-exec.php', 1 => 'pcntl_exec', ), 'next' => array ( 0 => 'function.pcntl-get-last-error.php', 1 => 'pcntl_get_last_error', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/pcntl/functions/pcntl-fork.xml', ), 'history' => array ( ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); contributors($setup); ?>

pcntl_fork

(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)

pcntl_forkForks the currently running process

Опис

pcntl_fork(): int

The pcntl_fork() function creates a child process that differs from the parent process only in its PID and PPID. Please see your system's fork(2) man page for specific details as to how fork works on your system.

Параметри

У цієї функції немає параметрів.

Значення, що повертаються

On success, the PID of the child process is returned in the parent's thread of execution, and a 0 is returned in the child's thread of execution. On failure, a -1 will be returned in the parent's context, no child process will be created, and a PHP error is raised.

Приклади

Приклад #1 pcntl_fork() example

<?php

$pid
= pcntl_fork();
if (
$pid == -1) {
die(
'could not fork');
} else if (
$pid) {
// we are the parent
pcntl_wait($status); //Protect against Zombie children
} else {
// we are the child
}

?>

Прогляньте також