我在mac上用mamp集成环境跑的一个我的项目上要应用到pcntl_fork()函数,但奇怪的是我查看过php.ini曾经加载了pcntl扩大,composer也装置了ext-pcntl,然而调用的时候就是会报undefined function pcntl_fork(),找了很多方向都没有解决,要留神的一个点是PCNTL在 Windows 平台上不可用。

$pid = pcntl_fork();if($pid == -1){    file_put_contents('testlog.log',"\r\nFork Test",FILE_APPEND);    return 1; //error}else if($pid){    return 0; //success}else{       file_put_contents($log, 'Running...', FILE_APPEND);}

起初在stackoverflow上找到答案:

当应用Apache作为php服务器时,无奈应用性能'pcntl_fork'模块(例如XAMPP)。您只能在CGI模式或命令行中应用pcntl_fork。

所以。。。把服务器换成nginx即可解决。