当在docker容器中设置php时,如何在vscode中设置php可执行路径php.validate.executablePath?
Posted
技术标签:
【中文标题】当在docker容器中设置php时,如何在vscode中设置php可执行路径php.validate.executablePath?【英文标题】:How to set php executable path php.validate.executablePath in vscode when php is set inside docker container? 【发布时间】:2017-10-01 18:58:59 【问题描述】:我有一个基于 docker 的开发环境。
每次打开 VSCode 时都会收到以下消息:
无法验证,因为没有设置 php 可执行文件。使用设置 'php.validate.executablePath' 来配置 PHP 可执行文件。
有人知道在这种情况下如何设置 php.validate.executablePath 吗?
我不知道该怎么做。
【问题讨论】:
github.com/Microsoft/vscode/issues/251 github.com/Microsoft/vscode/issues/533 是的!所有这些链接都讲述了在您的机器上本地运行的 PHP,而不是关于 Docker 环境 这里有截图答案***.com/a/36261014/4291272 似乎这个页面上的所有答案都在说......如果你在 Docker 中工作......无论如何都要在你的机器上安装 PHP 并设置它的路径。希望这能澄清问题。 【参考方案1】:我只是使用了双正斜杠,它就起作用了,就像这样:
"php.validate.executablePath": "C:\\xampp\\php\\php.exe",
【讨论】:
【参考方案2】: 转到“首选项”->“设置” 搜索>php path
然后点击Edit in settings.json
然后只需将您的目录与(双反斜杠)一起放置。
这是我的一个例子:
C:\\php\\php.exe
格式如下:
drive:\\folder_name\\php.exe
这应该可以解决问题。
【讨论】:
【参考方案3】:我有 ubuntu 和 XAMPP。 以下对我有用。
按 CTRL + P 输入 settings.json 并按 ENTER。
在 settings.json 中添加以下行
...
"php.validate.executablePath": "/opt/lampp/bin/php",
...
确保语法正确。
【讨论】:
【参考方案4】:关于问题的特定于 docker 的修订,我在 VS Code PHP Intellisense git repo 问题中找到了这个线程,该问题解释了如何创建包装脚本。不过,这将涉及映射体积,因此请考虑到这一点。
https://github.com/felixfbecker/vscode-php-intellisense/issues/150#issuecomment-330374124
【讨论】:
【参考方案5】:如果你使用的是 VScode 并且已经通过 MAMP 安装了 Php,那么默认路径应该是:
C:/MAMP/bin/php/php7.4.1/php.exe
/
不是\
【讨论】:
【参考方案6】:VSCode Linux 用户:
第 1 步: 在您的终端类型中
whereis php
在我的情况下“php:/opt/lampp/bin/php”
第 2 步:
"php.validate.executablePath": "/opt/lampp/bin/php"
【讨论】:
【参考方案7】:我不知道这是否有帮助,但我在 Visual Studio Code 中的扩展 PHP Intelephense 遇到了同样的问题。我所做的是阅读说明,以便扩展程序可以正常工作。所以我通过在扩展中搜索“@builtin PHP”禁用了 PHP 语言功能。此外,为了获得最佳效果,也应禁用提供类似功能的其他(第 3 方)PHP 扩展。最后,我在 files.associations 设置中添加了非标准 PHP 文件扩展名的 glob 模式。例如:“files.associations”:“*.module”:“PHP”
这样做会使错误消失。我也是 PHP 新手,如果这是否是使用 PHP Intelephense 解决此问题的正确方法,请告诉我。
【讨论】:
【参考方案8】:如果使用 Laragon...不要忘记将 \ 更改为 /
"php.executablePath": "C:/laragon/bin/php/php-7.4.5-Win32-vc15-x64/php.exe",
【讨论】:
【参考方案9】:在我使用 XAMPP 的情况下是这样的
"php.validate.executablePath": "C:/xampp/php/php.exe"
希望能回答你的问题
【讨论】:
在 Windows 10 上它也必须在你的路径变量中。在开始菜单中搜索环境变量并将其添加到路径中。只是目录,而不是exe。例如:C:\php 宾果游戏。正是我需要的。谢谢【参考方案10】:我的情况,我使用的是 Laragon,所以你应该搜索你的 php.exe 在哪里。
VSCode 只需添加即可。
"php.executablePath": "C:\\laragon\\bin\\php\\php-7.2.19-Win32-VC15-x64\\php.exe"
关于 settings.json。
【讨论】:
【参考方案11】:如果您在 VS 代码中的 Windows 上获得此信息,请单击蓝色的“打开设置”按钮。在打开的屏幕底部附近有一个用于输入设置的链接,单击它以打开 settings.json 文件。编辑文件如下所示:
"php.executablePath" : "C:/php-7.4.2-nts-Win32-vc15-x64/php.exe",
"php.validate.executablePath" : "C:/php-7.4.2-nts-Win32-vc15-x64/php.exe"
其中 C:/php-7.4.2-nts-Win32-vc15-x64 是 PHP 目录的路径
【讨论】:
【参考方案12】:我也收到此错误消息。 php.exe
的路径已在我的系统环境变量中设置。
当我在 VSCode 的 settings.json
文件中注释掉 "php.validate.executablePath": "c:/path/to/php7.2.10/php.exe"
时,错误消失了。
【讨论】:
【参考方案13】:"php.validate.executablePath": "C:/php/php.exe"
由于不正确的转义而无法工作
试试这个;
"php.validate.executablePath": "C:\\php\\php.exe"
【讨论】:
【参考方案14】:对于 Linux 用户: 如果您没有安装 PHP,请先下载, 然后在终端输入
$ whereis php
它会显示 php 可执行文件的路径(它将在 /usr/bin/php
或 usr/local/bin/php
中),您可以从终端复制它。
在 VScode 中转到 settings.json
文件并粘贴
php.validate.executablePath: /usr/bin/php
【讨论】:
就像其他答案提到的:不要忘记转义路径中的斜线!【参考方案15】:这是截图。
别忘了逃跑\
您不必将其添加到路径中
【讨论】:
@NgatiaFrankline 我可以帮助你的朋友吗? ?,你能澄清你的问题吗? @Elrashid 抱歉,来晚了。问题是How to set php executable path php.validate.executablePath in vscode when php is set inside docker container?
我的理解是 docker 运行容器化应用程序(如来宾/虚拟机,但资源较少。阅读更多 hub.docker.com )。因此,这意味着您的 docker php 环境(可以是 Ubuntu)与安装了 vscode 的本地桌面(可以是 windows)不同。如何从安装 vscode 的本地/开发机器获取来宾/容器化操作系统的 php.validate.executablePath 的路径???
@NgatiaFrankline 原来的问题是“如何设置 php.validate.executablePath?”于 2017 但已更改 2019 年 9 月 [点击此处查看修订](***.com/posts/43768614/revisions)
@Elrashid 当然,我的错。
@NgatiaFrankline 感谢您的理解❤,请随时标记我,如果您在任何其他问题上需要帮助,再次感谢您的关注和时间❤【参考方案16】:
我遇到了同样的问题,但找到了修复 here。
在 Windows 中:
-
转到系统属性
转到高级选项卡
点击“环境变量”
选择路径
添加指向您的 php 7 可执行文件的新路径:
【讨论】:
【参考方案17】:下载 PHP,就我而言,我是从这里下载的: http://windows.php.net/download/
将文件复制并粘贴到您计算机上的某个位置,并设置路径:
"php.validate.executablePath": "C:/php/php.exe"
【讨论】:
op专门询问php运行时何时在docker容器内,而不是如何在主机中安装php并在vscode中使用它。【参考方案18】:当然,很简单。照着上面说的就行了。
转到文件>首选项>设置...它将打开 settings.json 文件。
添加以下代码:
"php.validate.executablePath": "这里放你的 PHP.exe 路径"
你必须知道你的电脑中的PHP.exe文件在哪里,在php>bin文件夹中搜索。
希望对你有用
【讨论】:
但是 PHP 在 Docker 容器中,不是我的本地机器 @Takashi 以上两个答案都没有。以上是关于当在docker容器中设置php时,如何在vscode中设置php可执行路径php.validate.executablePath?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 GCP 中设置与 MongoDB Docker 容器的连接
如何在 docker 容器中设置 flask-socketio?
如何在 Debian/Ubuntu Docker 容器中设置语言环境?