这是一个微不足道的问题,但在这里。我无法弄清楚为什么VS代码自动填充(使用选项卡)所有html标签正确而php标签没有。当我输入“php”并点击标签时,它会创建:
<php></php>
这是无用的,我不知道为什么它在那里。我希望它能做正常的php标签
<?php ?>
我已经关闭了建议,因为他们分散了我的注意力。无论如何编辑默认/顶部“标签自动完成”项目?
这个黑客为我工作:转到'首选项:打开用户片段',并将此片段粘贴到html
(是的,那是html)用户片段:
"php": {
"prefix": "php",
"body": [
"<?php $1 ?>"
],
"description": "php tag"
}
我将详细说明Lane的答案,将$ 0表示的最终光标放在标签之间的新行中。在代码段中,“body”数组中的每个逗号代表一个新行。
因此,在Visual Sutiio Code中,转到文件>首选项>用户代码段搜索“html.json”并通过粘贴它来编辑它:
{
// Place your snippets for html here.
"php": {
"prefix": "php",
"body": ["<?php", "$0", "?>"],
"description": "php tag"
}
}
据我所知,您没有添加外部PHP IntelliSense扩展并使用VS代码提供的默认PHP IntelliSense,如果是这种情况,您需要将扩展添加到Visual Studio代码编辑器。
要添加扩展使用键盘并按Ctrl + Shift + p,您将获得命令调色板并输入以下命令Extensions: Install Extension
然后在编辑器的左侧面板上,您将获得搜索扩展名的选项,您可以搜索PHP IntelliSense
和安装它。编辑器将要求重新启动编辑器以应用扩展名。
我建议通过将以下属性"php.suggest.basic":false
添加到编辑器的设置json配置来禁用VS Code的内置PHP IntelliSense(键盘按Ctrl +,您将获得编辑器右侧的设置json)以避免重复建议。
对于PHP IntelliSense工作您需要安装至少PHP 7,您可以将其添加到您的PATH或在设置json中设置"php.executablePath":"php physical path"
(键盘按Ctrl +,您将获得设置json)
我更喜欢添加到keybindings.json的自定义键盘快捷键 - 这可以让你在intellisense无法正常工作的地方添加php标签,比如在html属性的引号内。你也可以选择一些文本(也许你从其他地方复制了一些没有完整的php标签的PHP)并自动将其包装在php标签中。这是我使用的:
{
"key": "cmd+alt+ctrl+p",
"command": "editor.action.insertSnippet",
"when": "editorTextFocus",
"args": {
"snippet": "<?php $1$TM_SELECTED_TEXT$0 ?>"
}
}
在Visual Studio代码中,转到文件>首选项>用户代码段>“html.json”文件并粘贴此代码:
"php": {
"prefix": "php",
"body": [
"<?php $1 ; ?>",
"$2"
],
"description": "php tag"
}