.blade.php
文件。由于 PHP 扩展,Visual Studio Code 无法格式化 HTML。我已经删除了文件名中的 "blade" 部分,但仍无法通过 Alt+Shift+F 正确格式化文件。我也尝试了五个扩展程序,但它们都不能重新格式化文件。
如何在 Visual Studio Code 中格式化
.blade.php
文件?.blade.php
文件。由于 PHP 扩展,Visual Studio Code 无法格式化 HTML。我已经删除了文件名中的 "blade" 部分,但仍无法通过 Alt+Shift+F 正确格式化文件。.blade.php
文件?这个扩展Beautify(来自HookyQR)做得非常好。只需将PHP和任何其他文件扩展名添加到配置中即可。就像Nico所说的,这里是一个例子:
进入用户设置(Ctrl + Shift + P → 用户设置(UI)或Ctrl + ,(逗号)
在上面的字段中搜索“Beautify”。然后点击“编辑settings.json”以更改“Beautify:Config”。
对于“html”部分,添加“php”和“blade”。
###用法
您可以直接调用它。按下F1,然后写入Beautify。 自动完成会给您两个选择,"美化文件"和"美化选定内容"。 选择您需要的那个,它就会完成任务。这是一种直接简单的方式。
您还可以添加一个键绑定以拥有键盘快捷方式。以下是如何操作:
Open keybindings.json (go to menu File → Preferences → Keyboard Shortcuts)
Click in the above. Open and edit file keybindings.json
Add the following into the closed brackets, []
{
"key": "alt+b",
"command": "HookyQR.beautify",
"when": "editorFocus"
}
Choose any key you want, and make sure you don't override an existing one. Search first in the left side if it exists or not.
blade
还是blade.php
感到困惑!我会为您澄清!它是blade
!那是vscode语言的关键字!编写 Blade 模板
你可以看到Laravel Blade (blade)
!语言关键字在括号中!blade!blade.php
!
尝试美化
你将会得到一个请求上下文菜单,用于选择语言(html、css、js)!
所以它不起作用!
要真正了解!请重新添加blade
!然后它将直接工作和美化!
对此的惊人答案!是尝试一下,亲自体验!
但如果你问我!我会说它像处理html那样有效!它可能太方便了!而且你可能需要修复一些行!这取决于你的期望和风格!
这里有一个例子!我故意弄乱了缩进
以下是美化后的结果:
Beautify(由HookyQR提供)可以解决这个问题!
很多人在HTML配置中添加了"blade.php"和"php"。但是Beautify无法识别这些手动选择HTML模板。相反,只需将"blade"添加到HTML配置中即可解决所有问题。
.blade
"结尾(而不是".blade.php
")? - Peter Mortensen安德鲁·舒尔茨提到了扩展程序:"在PHP中格式化HTML"
这确实是一个很棒的扩展程序,可以用于格式化带有HTML标记的PHP文件。它还可以格式化包含在PHP文件中的JavaScript代码。
此外,好消息!开发人员已经成功地在工作中包含了Laravel blade.php文件。与此同时,我通过在Visual Studio Code中手动从Blade切换到PHP语言,然后使用扩展程序"在PHP中格式化HTML"和Ctrl+Alt+F或右键单击来格式化Laravel blade文件。这对我非常有效。
我在PHP中使用格式化HTML,它可以很好地处理同时包含HTML和PHP的文件。但是,它似乎无法格式化“纯”PHP文件,例如类文件。因此,我还安装了Phpfmt,它可以很好地处理纯PHP文件,但会破坏混合内容文件中的缩进。以下是我得到的示例:
<?php
if (!$logged_in) {
$login_form = 'data-toggle="modal" data-target="#Modal1"';
$href = '#';
} else {
$login_form = '';
$href = 'members';
}
?>
PHP的开头标签与HTML正确对齐。在“支持的转换”下,我看到它说:
AlignPHPCode: Align PHP code within HTML block.
但是从上面可以看出,它对我不起作用。有什么建议吗?
使用 PHP 中的新功能,VSCode 似乎可以美观地格式化和突出显示嵌入式 HTML。(PHP 7.3 在发布该问题后发布),添加了所谓的“heredoc”和“neardoc”字符串。这里有很好的描述:https://andy-carter.com/blog/what-are-php-heredoc-nowdoc。
基本上,您可以像这样放置您的 HTML:
[php code.....]
echo
<<<HTML
<div>
<h1>This is a headline</h1>
<p> this is a paragraph. lorem ipsum lorem ipsum blah black </p>
</div>
HTML;
[^ don't forget the ; follow with more php if you want]
在屏幕上看起来非常棒。
可以通过使用 ".blade.php" 的 HTML 格式来完成:
"files.associations": {
"*.blade.php": "html",
"*.tpl": "html"
},
这将把.blade.php文件格式化为HTML,但不会删除Blade片段。
*
,而第二个项目(.tpl
)不需要? - Peter Mortensen