VS代码&;PHP:包含文件中的变量没有自动完成功能?

VS代码&;PHP:包含文件中的变量没有自动完成功能?,php,visual-studio-code,vscode-settings,Php,Visual Studio Code,Vscode Settings,我刚刚跳上了Visual Studio代码的潮流,但我的第一个交易失败了:我无法让它自动完成我在包含的“config.php”文件中设置的变量,我将在其中设置如下变量: $some_var = 'something'; 然后在另一个文件中,我将包括: <?php include 'config.php'; // etc....... My settings.json提供了一些我在这一过程中添加/尝试的定制功能: // PHP TROUBLESHOOTINGS: //"files.as

我刚刚跳上了Visual Studio代码的潮流,但我的第一个交易失败了:我无法让它自动完成我在包含的“config.php”文件中设置的变量,我将在其中设置如下变量:

$some_var = 'something';
然后在另一个文件中,我将包括:

<?php
include 'config.php';

// etc.......
My settings.json提供了一些我在这一过程中添加/尝试的定制功能:

// PHP TROUBLESHOOTINGS:
//"files.associations": {"*.php": "html"},
"files.autoGuessEncoding": true,
"files.defaultLanguage": "php",
"php.suggest.basic": true,

"editor.quickSuggestions": {
    "other": true,
    "comments": true,
    "strings": true
},

好吧,我已经断断续续地拨弄了一段时间了

我发现了一个扩展名为“PHP Tools for VS Code,by DEVSENSE”,它以某种方式使此功能正常工作……然而,它是一个付费扩展名,安装费用为179美元,安装费用为98美元/年(对于个人来说是79美元,然后续费49美元)

但是,这告诉我使用VS代码是可能的…

我已经使用Dreamweaver超过十年了,并且已经习惯了这个功能——但是我已经转向Linux,Adobe对它不感兴趣……此外,我讨厌为我购买的软件重复计费的想法——如果他们做出了一些新的和惊人的东西,我会购买它……但据我估计,DW已经有几年没有任何创新了;所以我很高兴解雇Adobe(并找到了VS代码——这非常棒)

不管怎么说,我猜是什么让我厌烦;我的基本文本编辑器“Xed”(随XFCE一起安装)具有这种功能,还有Vi(及其衍生物)、Geany和Bluefish……显然还有phpstorm等……可能还有很多我没有尝试过的功能

底线;真的看起来像是开箱即用的基本功能…而且VS代码的所有其他真正疯狂的功能,我很震惊没有一个简单的方法来实现它(扩展或其他);我希望合适的人能看到这一点,并对此采取行动;)

我不想在这里显得忘恩负义,这项VS代码计划和它周围的社区真的很了不起——我将继续使用它,至少在中期内

我的“创可贴修复”:我刚刚根据十几个配置文件中最常见的变量创建了一些用户代码片段,例如:

"$username": {
    "prefix": "$usr",
    "body": [
        "\\$username"
    ],
    "description": "inserts the PHP $username variable"
}
谢谢你的关注…并忍受我的咆哮-如果你有任何其他想法,请随意


另外,我确实在Intellisense-Crane上看到,他们在版本v0.3.7上有一个注释,上面写着“修复在Linux上包含文件的问题”…但是,显然不是”;)我甚至不能100%确定修复程序是否解决了我的问题,但这很有趣。

这是一项功能吗?我知道它会拾取函数,但不确定变量。它在我的可视化代码中确实与PHP Intellisense-Crane一起工作。然而,在第一次安装时,它并不总是立即工作。我想这是一个索引问题。谢谢,有趣的是PHP Intellisense-Crane是我最后安装的,现在仍然安装着…我刚刚关闭并重新启动,没有。至于它是否是一个功能——我无法想象它至少不是一个扩展……我已经使用Dreamweaver十多年了,它确实做到了。我还安装了Geany,甚至它也安装了。当然,我认为这是一个必须具备的功能。@TheFirstMinute:它不是Visual Studio代码的功能。它有一些内置php函数的基本自动完成功能和linting支持,但仅此而已。对于其他一切,您都需要第三方扩展(免费或付费,由您决定)。PHP不是microsoft产品,因此如果您想要高级功能,您需要依赖第三方扩展(最好由语言维护者提供,即PHP社区/Zend)
"$username": {
    "prefix": "$usr",
    "body": [
        "\\$username"
    ],
    "description": "inserts the PHP $username variable"
}