PHP 7.4
PHP 7.4 带来了新特性、语法添加和错误修正。有关迁移代码的详细信息,请参阅从 PHP 7.3.x 迁移到 PHP 7.4.x指南。
类型化的属性
使用类型化属性支持,您可以为类变量和属性声明类型提示。PhpStorm 突出显示并解析类型化的属性,并显示类型冲突(如果有)。您可以使用添加声明的类型意图操作Alt+Enter,让您根据 PHPDoc、默认值或参数类型声明即时添加类型提示。

嵌套三元运算符
PHP 7.4弃用了?
三元运算符的左结合性。您根本不应该使用嵌套三元组,或者如果必须提供括号来显式声明计算顺序。嵌套三元运算符用法检查将突出显示已弃用的表达式,并为您提供快速修复以澄清行为:

数字文字分隔符
处理长数字时,您可以在数字文字中的任何位置放置下划线分隔符以直观地格式化它,从而提高代码的可读性。为此,请使用添加数字分隔符意图操作Alt+Enter。

协变返回和逆变参数
当您使用从父类继承的方法时,您可以定义不太具体的参数类型和更具体的返回类型。也就是说,参数类型可以用它的超类型之一替换,而返回类型可以用它的子类型替换。

空值合并赋值运算符
空??=
合并赋值运算符让您可以将空合并和赋值操作合二为一。这样,您可以缩短长代码结构。PhpStorm 检测??
操作员的使用情况并提供快速修复以减少冗余。

数组表达式中的扩展运算符
在 PHP 7.4 中,您可以...
在数组表达式中使用扩展运算符。早些时候,它只在函数的参数列表中可用。Invalid type of unpacked argument检查检查操作符的正确使用,并确保您只对 arrays 和traversables进行解包。

箭头函数
在 PHP 7.4 中编写简单的单行 lambda 函数时,可以使用短箭头语法:fn(parameter_list) => expr
. 短箭头函数引入了来自外部范围的变量的自动按值绑定。PhpStorm 为它们提供完成并解析声明。

要将 lambda 函数从旧语法转换为新的短语法,您可以使用相应的Convert 闭包到箭头函数意图操作:

弃用
PHP 7.4 弃用了几种语言结构。您可以在此处查看弃用的完整列表。PhpStorm 突出显示了这些已弃用的用法,并为它们提供了快速修复。
Deprecated cast检查检测类型转换并让您用转换
(real)
替换它们(float)
。Deprecated implode/join 用法检查检测
implode
or函数的用法,join
其中数组作为第一个参数,字符串作为第二个参数。花括号访问语法使用检查检测不推荐使用花括号来访问数组元素和字符串偏移量。
短开放标签使用检查检测短开放标签的使用情况,这些标签在 PHP 7.4 中已弃用,并计划在 PHP 8.0 中删除。有关详细信息,请参阅RFC。