本文编写于 562 天前,最后修改于 544 天前,其中某些信息可能已经过时。

XAMPP下安装Swoole在phpinfo()显示在php -m不显示解决原因

本机环境:macOS、XAMPP

注意这里是xampp,这个是关键所在

问题复现:

phpinfo()界面可以看到已经编译成功的Swoole模块

php -m 中看不到对应模块

问题分析

php-cli中输入php --ini

me@MacBook-Pro> php --ini
Configuration File (php.ini) Path: /etc
Loaded Configuration File:     (none)
Scan for additional .ini files in: (none)
Additional .ini files parsed:   (none)

可以看到系统自带的默认目录在系统根目录/etc 下,而非我们的xampp目录,这就是问题所在

原因:

php命令用的不对,因为macOS自带php,那么执行php就会默认执行系统自带的php

解决方案

到xampp目录下找到php命令执行即可

me@MacBook-Pro> /Applications/XAMPP/xamppfiles/bin/php --ini
Configuration File (php.ini) Path: /Applications/XAMPP/xamppfiles/etc
Loaded Configuration File:         /Applications/XAMPP/xamppfiles/etc/php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed:      (none)

可以看到这里的php.ini和我们的phpinfo()是一样的,那么我们执行xampp下的php -m就能看到swoole了

所以以后我们要执行php一定要使用xampp内的php来执行文件。