Ubuntu20.04下phpinfo显示Phalcon.ini已加载但Composer报扩展缺失
解决步骤
第一步:确认CLI使用的PHP版本
执行命令:php -v
如果输出的版本不是7.4,说明系统默认CLI PHP版本不对,后续所有composer操作都需要指定用php7.4执行,格式为:php7.4 $(which composer) [操作命令]
第二步:验证CLI下Phalcon扩展是否加载
执行命令:php -m | grep phalcon
如果有phalcon输出,说明扩展已正常加载,可直接跳至第三步。
如果无输出,按以下流程排查:
- 检查CLI扩展目录下是否存在phalcon.so:
先执行php -i | grep extension_dir获取扩展目录路径,比如输出为/usr/lib/php/20190902,再执行ls /usr/lib/php/20190902 | grep phalcon,确认是否有phalcon.so文件。- 如果不存在,说明Phalcon安装不完整,先安装php7.4开发依赖
apt install php7.4-dev,再重新编译安装适配PHP7.4的Phalcon4版本,也可以直接安装对应deb包。 - 如果存在,检查
/etc/php/7.4/cli/conf.d/50-phalcon.ini内容,确认第一行是extension=phalcon.so,无拼写错误、多余符号。修改后执行php -m | grep phalcon重新验证。
- 如果不存在,说明Phalcon安装不完整,先安装php7.4开发依赖
第三步:确认Phalcon版本符合要求
执行命令:php -r "echo Phalcon\Version::get();"
确认输出的版本号是4.x系列,符合composer要求的^4.0范围。如果版本不对,需要卸载当前版本重装对应Phalcon4版本。
临时应急方案(不推荐长期使用)
如果确认扩展已正常加载但composer仍校验失败,可在执行composer命令时添加参数忽略平台扩展校验:composer install --ignore-platform-reqs ext-phalcon
内容的提问来源于stack exchange,提问作者baig772
相关产品推荐
相关产品推荐

