PhpStorm 2019.3 最新变化

借助此主要 IDE 更新体验超高效率

PHP 7.4支持

PHP 7.4 现已发布,PhpStorm 2019.3 完全支持它的所有新功能。 IDE 还提供了检查来高亮显示弃用代码,并且可以通过快速修复升级您的代码库。

类型属性

类型属性

在 2019.2 中,我们重新添加了对类型属性的支持。 在 2019.3 中,快速修复可以处理所有极端情况,您可以通过按 Alt-Enter 并选择 Add declared type for the field 快速轻松地添加类型声明。 PhpStorm 将根据 PHPDoc、默认值或构造函数中的参数类型声明自动检测类型。

箭头函数

箭头函数

PhpStorm 完全支持 PHP 7.4 中单行 lambda 函数的全新短语法。 IDE 为外部作用域中的变量提供了补全,点击一下,PhpStorm 即可将您定向到声明。

现在也可以使用快速修复,将单行 lambda 函数从旧语法转换为新的短语法。 只需在匿名函数上按 Alt-Enter,然后选择 Convert closure to arrow function

数值文字分隔符

数值文字分隔符

在 PHP 7.4 中,您可以为长数字添加下划线分隔符,以便直观地格式化并提升代码的可读性。

如果您遇到长数字,请将脱字符号放到数字上,按 Alt+Enter,然后选择 Add number separators。 对于十进制数字,每 3 位数字添加一个下划线“_”;对于十六进制、二进制和八进制,每 4 位数字添加一个下划线。

嵌套三元运算符

嵌套三元运算符

PHP 7.4 弃用了嵌套 ? : 运算符的左侧关联。 这意味着您应完全不使用嵌套三元运算符,或者如果您必须使用,则应使用括号来明确地声明计算的顺序。

PhpStorm 2019.3 会高亮显示弃用的表达式并为您提供快速修复以阐明行为。

弃用

弃用

此版本的 PHP 不仅添加了新功能,还弃用了许多旧功能。

PhpStorm 2019.3 具有相应的检查,并会高亮显示您需要注意的代码段。 如果可能,您会看到一个可以自动快速修复弃用行为的选项。

协变返回和逆变参数

协变返回和逆变参数

PHP 7.4 修复了多个不一致,包括影响类型系统的不一致。 在处理从父类继承的方法时,您现在可以定义更加具体的返回类型和不那么具体的参数类型。

PSR-12

新的 PSR-12 代码样式标准通过其他规则和适用于一些新 PHP 功能的新指南扩展了之前的 PSR-2。 PhpStorm 2019.3 提供了预定义的 PSR-12 代码样式,IDE 会建议您切换到此样式。 您还可以通过 Preferences | Editor | Code Style | PHP 下的 Set from… 操作手动切换到此样式。

PhpStorm 还会建议启用一组 PSR-12 代码样式检查,它们会检查有无特定违规行为。

您可以通过按 Cmd+Alt+L 在编辑器中重新设置代码格式,或者在提交之前运行重新格式化。 您还可以使用 Code > Code Cleanup... 重新格式化整个项目或文件夹

WSL

支持 WSL 的解释器

适用于 Linux 的 Windows 子系统是一种兼容性层,用于在 Windows 10 上以原生方式运行 Linux 二进制可执行文件。 PhpStorm 现在支持在 WSL 环境中开发,适用于您在 Windows 计算机上启动 IDE 但开发目标环境是 WSL/Linux 的情况。 您可以在 WSL 中指定远程 PHP 解释器,并将它用于运行脚本、测试、Composer 命令和调试。

指定 PHP 测试运行配置的解释器

指定 PHP 测试运行配置的解释器

过去,您的测试运行配置仅可以通过默认项目 PHP 解释器来执行,十分不方便。

现在完全不一样了。 在 PhpStorm 2019.3 中,您可以选择配置的任何解释器,并使用它运行您的测试:DockerVagrantSSHWSL 或任何其他解释器 - 完全由您决定!

更多功能

PHPDoc改进

PHPDoc改进

一直以来在 PhpStorm 中,整个 PHPDoc 块都以一种颜色显示,样式如同普通注释。

现在,文档块将完全高亮显示所有类型、变量、参数、方法和属性。 如果您的注释中有 HTML,它也会像这样高亮显示。

$this 变量的字体和颜色

$this 变量的字体和颜色

您可以为 $this 实例选择字体和颜色:转到 Preferences | Editor | Color Scheme | PHP | Identifiers,然后以您希望的方式进行自定义。

Markdown 和字符串中的 PHP 高亮显示

Markdown 和字符串中的 PHP 高亮显示

在 PhpStorm 2019.3 中,如果您要将 ‘php’ 用作信息字符串,Markdown 文件中的 PHP 代码块会自动高亮显示。 得益于特殊的 PHP 方言 InjectablePHP,您还可以对其他字符串进行 PHP 高亮显示,此方言的运作方式与 PHP 相似,但不需要开始标记。

if-else 的上下文操作
提取赋值

提取赋值

合并嵌套条件

合并嵌套条件

合并 else 和后面的 if

合并 else 和后面的 if

HTTP客户端

观看在 PhpStorm 中使用 HTTP 客户端的短视频教程,像专业人士一样提出请求。

编辑器工具栏

编辑器工具栏

每次打开 .http 文件时,您都会看到一个工具栏,它让您能够快速访问所有常用操作:

  • Add request - 从模板创建请求。
  • Convert from cURL - 通过在编辑器中粘贴 cURL 的方式创建请求。
  • Open Log - 查看已发送请求的列表并打开/比较响应。
  • Examples - 探索便捷 HTTP 请求的集合。
动态变量

动态变量

我们添加了 3 个动态变量,您可以在请求中使用它们:

  • $uuid - 生成新的 UUID-v4。
  • $timestamp - 当前的 Unix 时间戳。
  • $randomInt - 0 和 1000 之间的随机整数。

使用双大括号在您想要的地方插入这些变量。

运行全部

运行全部

您可以在一个 .http 文件中编写多个请求。 如果您需要编写请求链(请求取决于之前请求的结果),这将非常方便。

之前,您必须逐个运行每个请求,现在在 PhpStorm 2019.3 中,您只需点击一下即可运行全部请求!

折叠请求

折叠请求

如果您要发送包含长主体的请求,例如,多部分表单数据或许多头文件,您可能希望将其折叠,以便在编辑器中减少噪音。

您可以通过点击装订区域内的箭头图标来折叠整个请求,仅留下第一行或主体。

Web 技术

和往常一样,WebStorm 2019.3 的所有新功能和改进也都适用于 PhpStorm 2019.3,要么开箱即用,要么通过插件 Marketplace 中的免费插件提供。

更高级的 Vue.js 支持

更高级的 Vue.js 支持

借助新的传播到解构 (Propagate to destructuring) 意图 Alt+Enter,您可以将一个额外变量替换为另一个解构。 要完全移除解构,可使用名为用属性或索引访问替换解构 (Replace destructuring with property or index access) 的意图操作。

如果条件中的布尔表达式含有任何不必要的部分,IDE 将发出警告,并提供简化该表达式的建议。

CDN 上 CSS 库的补全

CDN 上 CSS 库的补全

在您重命名 JavaScript 或 TypeScript 文件中的符号时,IDE 现在会将动态用法组合在一起,并且默认会从重构中将其排除。 这使重构更准确,并且使您可以更严格地控制应在 Refactoring Preview 工具窗口中重命名的对象。

新符号的名称建议

新符号的名称建议

在 Vue.js 应用程序中使用 Vuetify 或 BootstrapVue? 这些和其他 Vue 组件库的组件及其属性的代码补全更加准确。 这是通过我们采用新方法在 IDE 中使用这些库实现的。

版本控制

用于从 VCS 和 GitHub 中克隆项目的新 UI

用于从 VCS 和 GitHub 中克隆项目的新 UI

从版本控制系统克隆项目时,无论是通过 IDE 欢迎界面还是 VCS 菜单,您都会看到更新的 Get from Version Control 对话框。

借助此重新设计,我们希望提升从 GitHub 帐户获取项目的体验。 您现在可以在对话框的左侧选择 GitHub,然后登录您的帐户。

推送任何分支

推送任何分支

您现在可以直接在 Branches 弹出窗口中从任何分支推送更改 - 选择一个分支,然后使用菜单中的 Push 操作

之前,您仅可以从正在处理的分支推送更改,并且要推送更改,您必须首先切换到该分支,然后才能推送更改。

数据格式自定义

数据格式自定义

有时,在浏览版本历史日志时,如果时间以相对格式(如 dd/mm/yyyy;如果在美国,则为 mm/dd/yyyy)显示,理解信息会更加简单。

在 PhpStorm 2019.3 中,可以为 VCS Annotate 和 VCS Log 操作配置数据格式。

数据库工具

DataGrip 团队的同事对 PhpStorm 中的数据库工具进行了一些优异的改进: 了解 DataGrip 2019.3 中的最新变化。

MongoDB 支持

包括 PhpStorm 在内的 IDE 终于实现了备受期待的 MongoDB 支持。 现在可以在数据库资源管理器中查看集合与字段,借助对树形视图的支持查看数据。 您还可以按列排序或筛选值,更重要的是,可以直接在 IDE 中运行查询

其他改进:

  • 启动更快 - 您现在无需等待很长时间,就可以看到欢迎界面显示和 IDE 打开已编制索引的项目。
  • 更好的插件管理 - 在您添加/移除主题插件时,IDE 不再需要重启。
  • 通过插件改进了 Kubernetes 支持。
  • 对比度滚动栏 - 转到 Preferences/Settings | Appearance & Behavior | Appearance 并启用“Use contrast scrollbars”。
  • 使用 Find 操作时在选定区域中搜索。
  • 平滑的鼠标滚动 - Preferences | Appearance & Behavior | Appearance > Smooth scrolling