PhpStorm 2019.1:调试Twig和Blade模板,搜索无效代码,改进的自动完成功能等等



哈Ha!

我们很高兴介绍今年PhpStorm的第一个主要版本!
该发行版的概述可以在“新功能”页面上找到。 然后,在此页面的翻译中包含最有趣的新功能的演示。

您可以在网站上或使用工具箱应用程序下载新版本。 与往常一样,有30天的试用期。 订阅有效的PhpStorm或“所有产品包”的持有人可以使用完整版,而开源项目的学生开发人员可以免费使用该完整版。

总共修复了1118个错误,并添加了许多新功能。 这是最有趣的。

调试树枝和刀片模板


多亏了调试器,您才能快速处理最棘手的错误,但是为了在模板中发现问题,您必须走遍机器生成的代码的丛林。 在PhpStorm 2019.1中,我们添加了调试原始未编译的.twig.blade.php模板文件的功能。

为此,只需在IDE设置中指定已编译模板(缓存)的路径: 语言和框架| Php | 调试| TwigBlade的 模板

对于Twig,还必须在配置中指定debugauto_reload
对于Blade而言,一切将自动运行,但仅从Laravel 5.8开始。

之后,您可以打开调试器并直接在模板中设置断点。 执行将在指定的位置停止,并且所有常规调试选项将可用:逐步执行,局部和全局变量,值跟踪(监视)以及所有其他内容。



说到调试:我们积极支持Xdebug Derick Rethans的作者改进调试器,解决累积的问题,并扩展其在PhpStorm中使用的可能性。

死码检测


PHP今年已有24年了,您经常遇到旧代码也就不足为奇了。 您要做的第一件事是清洁并清除多余的东西。 对未使用的声明进行新检查将仅在此问题上有所帮助。
PhpStorm 2019.1可以即时分析您的代码,并在编辑器中直接突出显示可能未在任何地方使用的类,类成员和函数。



您还可以以批处理模式查找所有未使用的项目。 为此,请调用“ 代码”->“按名称运行检查”菜单,然后选择“ 未使用的申报” 检查 。 您将收到一份报告,其中列出了所有问题以及说明和快速修复。



新的重构和快速行动


按照传统,我们添加了几个新的重构,以使常规操作快速且无错误。

字符串操作
如果在任何字符串表达式上按Alt + Enter ,您将看到可用转换的完整列表。 例如,已经有一个从/到NOWDOC / HEREDOC的转换,替换了引号,并使用串联将字符串分割为两个。
在此发行版中,我们添加了一些更方便的方法-将串联的字符串复制到缓冲区,用插值替换字符串的串联,或者调用sprintf()函数, 并执行相反的操作:



删除未使用的变量
新的检查将检测并允许您在赋值操作中删除未使用的变量,并在闭包中use构造。



重构移动到类
使用此重构,您可以安全地将函数从PHP文件传输到类。 PhpStorm将更新对这些功能的所有调用。



恢复订单时,您可能需要一次移动多个功能-PhpStorm也支持此功能。 您需要在“结构”窗口中选择所需的函数,然后调用“移至类”重构。

检查方法可能是“静态的”
此检查将发现可以转换为静态的方法,即不使用该类实例的方法。 此类方法将提供上下文操作-您可以按Alt-Enter并选择“设为静态”。 正如预期的那样,所有呼叫将自动修复。



改进的自动完成机制


使用.phpstorm.meta.php文件,您可以告诉IDE函数中应包含哪些参数或可以返回什么值。 PhpStorm将使用此信息来自动完成。
假设函数期望某种常量作为参数。 形式上,此常量的类型是integer ,但实际上我们知道可能的常量集。
例如, json_encode($data, /* JSON_* */)
我们还可以有一个返回常量的函数,例如json_last_error()
在PhpStorm 2019.1中,这些功能以及许多其他内置功能的自动完成功能已经可以立即使用:



此外,只需在项目中添加一个特殊的.phpstorm.meta.php文件,即可在任何项目/库/框架中完成这种自动完成。 而且可以有很多这样的文件,PhpStorm会找到并合并它们。
例如,Symfony的此类文件已经以King2500 / symfony-phpstorm-meta软件包的形式存在-它随Symfony插件一起提供
阅读更多有关新功能.phpstorm.meta.php的文章

导入优化


对进口的分析和纠正制度进行了稍微的修改。 现在,如果有可能,PhpStorm将建议用import替换类的全名,如果多余则将其完全删除。
还增加了按字母顺序或按长度对use表达式进行排序的功能。

代码清理代码清理工具


此工具可实现安全的批量转换。 例如,一次在整个项目中,在某个目录中,等等。
它已在PhpStorm中提供了很长一段时间,但仅在2019.1中添加了PHP功能。 首先,它支持两种编码样式校正工具:PHP CS Fixer和PHP_CodeSniffer的phpcbf。 以及两次检查,以优化上一段落的进口。



只需在提交对话框中选中相应的对话框,即可随时手动或在提交之前启动此工具:



重用Docker容器


添加了对以docker-compose run和docker-compose exec模式启动Docker容器的支持。 第一种模式适用于启动后立即停止的轻质容器。 第二种方法使您无需重新启动即可重用正在运行的容器。



其他改进包括:

  • 灵活的PHPDoc设置:您可以在“首选项” |“自定义”中自定义元素和缩进的顺序 编辑器 代码样式| PHP选项卡PHPDoc;
  • 默认的PHP文件模板已清除-不再由PhpStorm创建。
  • 向类构造函数添加类属性的新快速操作;
  • 您可以全局启用严格模式,
    即使文件没有declare(strict_types = 1);指令declare(strict_types = 1);


Vcs


版本控制系统进行了许多有用的改进:
  • 在Git日志中添加了Fixup和Squash操作;
  • 查看差异时,您现在可以交换面板。
  • 现在强制使用安全性--force-with-lease因为使用了--force-with-lease标志;
  • 部分提交的全部取消选中选项已添加到提交对话框-可以关闭所有更改,然后仅选择必要的更改:



IDE增强


最近位置对话框
大多数情况下,执行任务时,开发人员必须阅读代码,而不是编写代码。 因此,文件之间的快速导航始终非常重要。 PhpStorm已经具有“ 随处搜索”弹出窗口 Shift-Shift 书签和收藏夹( Cmd + 2 / Alt + 2 ),来回移动故事( Cmd + [ -Cmd +] / Ctrl + Alt +左 -Ctrl + Alt +右 ),或查看最新文件( Cmd + E / Ctrl + E
在PhpStorm 2019.1中,我们添加了另一个有趣的功能-最近位置对话框( Cmd-Shift-E / Ctrl + Shift + E) ,它将显示您查看或编辑的最后一段代码。 如果您想快速浏览历史记录并查看上下文以准确了解要移动的位置,这可能会派上用场。



新界面主题
PhpStorm具有三个主题:“浅”,“ Darcula”和“高对比度”。 如果您想尝试新鲜的东西,请安装新主题之一: 深紫色灰色浅青色 。 同样,现在您可以自己创建主题,同时可以设置任何元素或图标的颜色。 在文档中阅读更多内容



软包装取决于文件类型
如果您经常使用markdown或文本文件,那么它们的换行将自动打开。 您也可以在“ 首选项” |“其他”中指定其他文件类型。 编辑器 一般| 软包装文件。

PhpStorm一如既往地包含 来自WebStorm的所有更新
CSS属性,HTML标记和浏览器支持的文档现在来自MDN,并包含相关文章的链接,对Vue应用程序的TypeScript支持得到了改进,对Angular应用程序进行了17次新检查,并且出现了新的JavaScript和Node.js调试器面板交互式控制台。

...以及 来自DataGrip的内容
现在还支持Greenplum,Vertica,Apache Hive; 现在,您可以选择默认项目文件夹。 以及完成结构和属性的改进方法。

这就是我们设法讨论的全部内容,但不是发行版中包含的全部内容。 与往常一样,完整的更改列表可以在非常大的发行说明中找到

感谢您的关注!
JetBrains PhpStorm团队

Source: https://habr.com/ru/post/zh-CN445976/


All Articles