PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

新版本包括对PHP 8,静态分析器PHPStan和Psalm,Xdebug 3,Tailwind CSS,通过Code With Me进行协作开发的全面支持。

PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具,旨在提高用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。

这个主要版本包括对PHP 8,静态分析器PHPStan和Psalm,Xdebug 3,Tailwind CSS,通过Code With Me进行协作开发的全面支持。

PhpStorm 2020.3现已上市!

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

下载PHPSTORM 2020.3

阅读有关所有新功能和重要更新以及大量GIF的详细信息!

  • PHP 8:支持所有语言功能,甚至开源的Custom Attributes。
  • PHPStan和Psalm可以直接在代码编辑器中或以批处理方式检测问题。
  • Xdebug 3具有简化的配置,以及调试器的改进,例如嵌入式监视和交互式提示。
  • HTTP客户端现在可以运行Guzzle请求并将请求复制为cURL。
  • 协作开发使您可以与他人共享您的项目,并实时一起进行。
  • 在编辑器中,您现在可以使用Mermaid.js渲染图和图表,更轻松地拆分选项卡,并即时预览文件而无需打开它们。
  • 各种各样的IDE增强功能:“无处不在的搜索”有了一些新的举措。IDE视觉主题与操作系统保持同步。将PhpStorm设置为打开文件的默认应用程序。
  • 现在支持Git stage作为变更列表的替代。
  • 数据库工具为MongoDB和新的数据提取器带来了对SQL的支持。
  • Tailwind CSS,为Tailwind类提供编码帮助。

PHP 8

PhpStorm 2020.3支持所有最新的语言更改。以下是可用的功能以及如何在IDE中使用它。

从状态栏设置语言级别

现在,状态栏始终显示项目的当前语言级别。从那里进行切换,以利用PHP 8的新功能。

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

如果切换未激活,则意味着项目的composer.json中的语言版本受到限制,您应该在该文件中对其进行调整。

命名参数

在PHP 8中,可以通过指定参数名称来传递函数和方法参数。现在,调用已自行记录,并且可选参数已成为真正的可选参数,因为您可以忽略它们。

使用添加名称标识符快速修复将位置参数转换为命名参数:

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

如果参数包含错字或没有匹配的参数,则PhpStorm会突出显示这些参数:

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

如果传递的值与参数的默认值相同,则PhpStorm会将参数变灰,您可以通过快速修复将其安全删除:

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

开发人员经常使用选项数组来传递一组参数。使用命名参数,这不是必需的,因为您可以指定所需的参数。另外,与数组元素不同,以这种方式传递的参数是类型安全的。

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

属性

属性(又名注解)是一种新的结构化方式,用于在PHP中指定元数据。它们替换了PHPDoc注释。

要创建属性,请声明一个普通的类并#[Attribute]在其顶部添加一个标记。PhpStorm在此处提供了所有预期的功能,包括突出显示,代码完成,查找用法,重构等。

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

PHP本身仅在调用时才验证属性ReflectionAttribute::newInstance()。在此之前,如果不通过反射访问,则将完全忽略属性,以避免必须加载类和创建对象。

使用PhpStorm,无需运行反射API即可查看属性是否有效。强制执行以下规则:

  • 指定的类实际上可以是一个属性。 PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

  • 此属性仅适用于允许的目标:类,属性,方法,参数,函数或类常量。

    PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等
  • 仅当具有Attribute::IS_REPEATABLE标志时,才重复此属性。

    PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

这是与Symfony一起使用的属性:

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

PhpStorm中的自定义PHP 8属性

PhpStorm 2020.3中有几个可用的属性,它们位于JetBrainsPhpStorm名称空间下。

立即将它们添加到您的代码库中,以获得更好的代码完成和更多的检查。

#[ArrayShape]

当定义一个实类时,此属性对于使用简单的数据结构或类对象数组很有用。

语法如下:

#[ArrayShape([// ‘key’ => ’type’,   ‘key1’ => ‘int’,   ‘key2’ => ‘string’,   ‘key3’ => ‘Foo’,   ‘key3’ => AppPHP 8Foo::class,])]function functionName(...): array

type可以被指定为一个字符串或作为在FQN字符串或形式的类引用::class常量。

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

这是定义形状的数组。将其提取为常量,然后在其适用的属性内重用:

const MY_ARRAY_SHAPE = [] ;#[ ArrayShape (MY_ARRAY_SHAPE )]

PhpStorm 2020.3:全面支持PHP 8,PHPStan,Xdebug 3和协作开发等

在PhpStorm中,我们已经注释了一些内部PHP函数,例如parse_url()with #[ArrayShape],因此您可以立即受益于这些属性。

幸运的是,单行属性的语法是向后兼容的。如果将#[ArrayShape]属性添加到PHP 7.*项目的单独一行中,则PHP解释器会将其解析为注释行。但是,多行属性对于8之前的PHP版本并不安全。

与PHP解释器不同,PhpStorm仍然会分析属性!因此,即使您的项目在PHP 7.4或更低版本上运行,您仍然可以从添加#[ArrayShape]属性中受益。

点击查看更多详细更新内容

好了这就是今天的内容了,如果今天的文章未解决你的需求,可点击获取更多免费教程。不要忘了在评论与我们分享您的想法和建议,PhpStorm正版授权在线订购最高立减3000元!低至1333!还有多种授权方式供你选择。

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年11月4日
下一篇 2020年11月4日

相关推荐

发表回复

登录后才能评论