这是我的代码,里面index.php(只是一个例子):
$pid = pcntl_fork();
if ($pid == -1) {
die("failed to fork");
} else if ($pid) {
// nothing to do
} else {
putDataIntoWebService();
exit();
}
echo "normal page content";
Run Code Online (Sandbox Code Playgroud)
此代码段在命令行中正常工作.在Apache中exit(),父母和孩子一起杀死它们.什么是变通方法?
您不能将这些pcntl_*函数与PHP的Apache模块版本一起使用.引用pcntl_fork文档中的评论:
当PHP用作Apache模块时,不可能使用函数'pcntl_fork'.您只能在CGI模式或命令行中使用pcntl_fork.
使用此函数将导致:'致命错误:调用未定义的函数:pcntl_fork()'