php pcntl fork失敗的解決方法:1、檢查php.ini是否載入了pcntl擴充;2、查看composer是否安裝了ext-pcntl;3、在CGI模式或命令列中使用pcntl_fork即可。
本教學操作環境:windows10系統、PHP8.1版、DELL G3電腦
php pcntl fork失敗怎麼辦?
pcntl_fork()回傳致命錯誤:呼叫未定義函數pcntl_fork()
我在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即可解決。
推薦學習:《PHP影片教學》
以上是php pcntl fork失敗怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!