VS Code php标签自动完成

问题描述 投票:23回答:5

这是一个微不足道的问题,但在这里。我无法弄清楚为什么VS代码自动填充(使用选项卡)所有html标签正确而php标签没有。当我输入“php”并点击标签时,它会创建:

<php></php>

这是无用的,我不知道为什么它在那里。我希望它能做正常的php标签

<?php ?>

我已经关闭了建议,因为他们分散了我的注意力。无论如何编辑默认/顶部“标签自动完成”项目?

php autocomplete visual-studio-code vscode-settings
5个回答
55
投票

这个黑客为我工作:转到'首选项:打开用户片段',并将此片段粘贴到html(是的,那是html)用户片段:

"php": {
    "prefix": "php",
    "body": [
        "<?php $1 ?>"
    ],
    "description": "php tag"
}

2
投票

我将详细说明Lane的答案,将$ 0表示的最终光标放在标签之间的新行中。在代码段中,“body”数组中的每个逗号代表一个新行。

因此,在Visual Sutiio Code中,转到文件>首选项>用户代码段搜索“html.json”并通过粘贴它来编辑它:

{
  // Place your snippets for html here. 
  "php": {
    "prefix": "php",
    "body": ["<?php", "$0", "?>"],
    "description": "php tag"
  }
}

0
投票

据我所知,您没有添加外部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)


0
投票

我更喜欢添加到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 ?>"
  }
}

0
投票

在Visual Studio代码中,转到文件>首选项>用户代码段>“html.json”文件并粘贴此代码:

"php": {
    "prefix": "php",
    "body": [
        "<?php $1 ; ?>",
        "$2"
    ],
    "description": "php tag"
}
© www.soinside.com 2019 - 2024. All rights reserved.