2016-10-31 82 views
0

我正在使用MAMP Pro來管理我的開發環境,PHP是7.0.12版並且正在模塊模式下運行。使已安裝的PCNTL擴展可用於MAMP中的命令行PHP

我已經爲PHP添加了pcntl模塊並按照this answer的指示編譯了它。

pcntl.so文件位於我的/Applications/MAMP/bin/php/php7.0.12/lib/php/extensions/no-debug-non-zts-20151012文件夾中。另外,在我的虛擬主機上,我可以輸出phpinfo()並驗證是否安裝了擴展,並通過function_exists('pcntl_signal')進行了檢查,並返回true。

但是,我從終端運行PHP時無法使其工作。我正在使用MAMP安裝的那個,並通過/Applications/MAMP/bin/php/php7.0.12/bin/php調用它。但是,我得到函數pcntl_signal不存在的錯誤。

另外運行/Applications/MAMP/bin/php/php7.0.12/bin/php -i | grep pcntl不輸出任何東西。

有沒有辦法讓pcntl模塊可以通過除apache正在使用的命令行提供給PHP?

+1

典型地,該模塊和PHP的CLI版本使用單獨的'php.ini'文件。也許你只在其中一箇中提到了新模塊? – arkascha

回答

0

MAMP使用兩個獨立的ini文件用於PHP。

一個可通過GUI編輯,另一個需要手動編輯。對於此PHP版本的擴展必須在/Applications/MAMP/bin/php/php7.0.12/conf/php.ini

加入添加extension=pcntl.so到上述ini文件後,運行php -i | grep pcntl將輸出

pcntl

pcntl support => enabled