在 PHP 中,可以使用 pcntl_fork() 函数来创建子进程。以下是一个简单的示例:
<?php
// 父进程代码
$pid = pcntl_fork(); // 创建子进程
if ($pid == -1) {
// fork 失败
die('could not fork');
} elseif ($pid) {
// 父进程代码
echo 'Parent process PID: ' . getmypid() . PHP_EOL;
pcntl_wait($status); // 等待子进程结束
} else {
// 子进程代码
echo 'Child process PID: ' . getmypid() . PHP_EOL;
// 在这里执行子进程的任务
exit(0); // 子进程正常结束
}
?>
在这个示例中,我们首先使用 pcntl_fork() 函数尝试创建一个子进程。如果返回值为 -1,则表示 fork 失败。如果返回值大于 0,则表示我们在父进程中,可以继续执行父进程的代码。如果返回值为 0,则表示我们在子进程中,可以执行子进程的代码。
在子进程中,我们可以执行任何需要的任务,然后使用 exit() 函数结束子进程。在父进程中,我们可以使用 pcntl_wait() 函数等待子进程结束。