我正在使用MAMP Pro来管理我的开发环境,PHP是版本7.0.12并且正在以模块模式运行。
我已经为PHP添加了pcntl模块,并按照this answer的指示进行了编译。
pcntl.so文件位于我的/Applications/MAMP/bin/php/php7.0.12/lib/php/extensions/no-debug-non-zts-20151012
文件夹中。此外,在我的vhost上,我可以输出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
不会输出任何内容。
除了apache使用的那个之外,有没有办法让pcntl模块可以通过命令行使用?
答案 0 :(得分: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