You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Docker时VSCode的Devsense PHP扩展无法识别自定义PHP可执行文件

解决Devsense PHP扩展无法识别Docker容器内自定义PHP的问题

1. 确保自定义PHP脚本具备可执行权限

你的./docker/php/bin/php脚本需要拥有执行权限,否则扩展无法正常调用它:

chmod +x ./docker/php/bin/php

执行完成后手动测试脚本有效性,确认能返回容器内的PHP版本信息:

./docker/php/bin/php -v

2. 修正VSCode配置,指定默认PHP版本

你仅注册了自定义PHP,但未将其设置为扩展默认使用的版本,这是扩展仍调用系统PHP的核心原因。在VSCode的settings.json中补充配置:

"php.executables": {
    "my/sail-php8.2": "./docker/php/bin/php"
},
"php.defaultVersion": "my/sail-php8.2"

注意php.defaultVersion的值必须和php.executables中定义的ID完全一致(即my/sail-php8.2)。

3. 验证配置生效

  • 重启VSCode或通过命令面板执行Developer: Reload Window重载窗口
  • 查看扩展启动日志,若显示类似以下内容,说明自定义PHP已被正确识别:
    PHP extension started.
    Found PHP, version: [容器内的PHP版本号], Xdebug: [是否加载状态]
    

4. 确认PHPUnit调用正常

配置生效后,Devsense扩展会自动使用指定的自定义PHP运行PHPUnit测试,实际执行的命令会变为:

./docker/php/bin/php -d display_errors=on /home/erstevn/Code/pilihjurusan/api/vendor/bin/phpunit --teamcity

进而间接调用Docker容器内的PHP完成测试任务。

内容的提问来源于stack exchange,提问作者Azvya Erstevan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 18:13:31