PHP8.1来了,php8.1发布于2021年11月25日
PHP 团队昨天宣布发布 PHP 8.1:
PHP 8.1 发布了!
阅读所有相关信息:https://t.co/ToeHc3YGau
迁移指南:https://t.co/BVVZ7lSXd1
非常感谢贡献者所做的一切,感谢 RM 发布这个惊人的新版本!
您最喜欢的新功能是什么?
— php.net (@official_php)
https://twitter.com/official_php/status/1463943033234276360?ref_src=twsrc%5Etfw
2021 年 11 月 25 日
根据公告,以下是 PHP 8.1 的主要功能列表:
枚举
只读属性
纤维
纯交集类型
从不返回类型
一流的可调用语法
类常量的“final”修饰符
新的 fsync 和 fdatasync 函数
新的 array_is_list 函数
显式八进制数字表示法
还有更多……
枚举
PHP 8.1 原生支持枚举(Enums),提供了丰富的 api 来定义和使用枚举:
https://www.php.net/manual/en/language.enumerations.php
enum Status
{
case Draft;
case Published;
case Archived;
}
function acceptStatus(Status $status) {...}
只读属性
只读属性在初始化后无法更改。您可以确信您的数据类是一致的。 PHP 8.1 可以通过定义作者不打算更改的公共属性来减少样板,而不是通过“getter”方法访问的私有属性:
class BlogData
{
public readonly Status $status;
public function __construct(Status $status)
{
$this->status = $status;
}
}
交叉路口类型
当需要同时满足多个约束时,您可以使用交集类型:
function count_and_iterate(Iterator&Countable $value) {
foreach ($value as $val) {
echo $val;
}
count($value);
}
一流的可调用语法
您可以通过调用它并传递...来从可调用对象中创建一个闭包:
function add(int $a, int $b) {
// ...
}
$add = add(...);
$add(1, 5);
$add(5, 3);
以及更多...
要快速了解这些新功能,请查看 PHP 8.1.0 发布公告页面,
https://www.php.net/releases/8.1/en.php
了解 PHP 8.1 之前/之后的示例以及性能改进。
相关文章