php-m 與 phpinfo 不一致的解決辦法

1.查看PHP當前加載的php.ini文件地址,在控制檯輸入如下命令:php

1
php -i | grep php.ini

2.控制檯返回的信息redis

1
2
Configuration File (php.ini) Path => /Applications/MAMP/bin/php/php7 .2.10 /conf
Loaded Configuration File => /Applications/MAMP/bin/php/php7 .2.10 /conf/php .ini

3.在此php.ini下方補充擴展:例如thinkphp

extension=redis.so
extension=pcntl.so

4.再次經過php-m命令查看發現須要的擴展已經出現了(前提已經安裝)bash

5.運行實際項目也沒有了保存問題php7

以我MAC 運行的thinkphp項目爲例 引入了第三方擴展 Workerman,已經肯定pcntl擴展已經安裝可是經過cli運行依然提示如下報錯函數

[think\exception\ThrowableError]                                  
Fatal error: Call to undefined function Workerman\pcntl_signal() 

經過phpinfo()函數發現pcntl擴展已經安裝完成,可是使用php-m並未找到pcntl擴展spa

使用以上方法找到命令行模式下php加載的php.ini文件,在文件底部加入擴展命令行

extension=pcntl.so

 在此使用 php think worker:server 運行服務已經沒有了報錯,問題解決code

相關文章
相關標籤/搜索