PHP 7.4 中发布了哪些新特性
PHP 7.4.0 进行了许多改进和新功能,比如:
- 箭头函数
- 预加载
- 类型属性
- FFI
- 简化 Null 合并运算符
- ……
下面我们来具体看一下
箭头函数
箭头函数也称之为短闭包,可实现更简洁的单行书写
以前这么写
array_map(function (User $user) {
return $user->id;
}, $users)
现在这么写
array_map(fn(User $user) => $user->id, $users)
你可以在此处深入了解它们。
类型属性
类中的类属性可以提示类型
class A
{
public string $name;
public ?Foo $foo;
}
你可以在此处深入了解它们。
Null 合并运算符
不再需要这样做:
$data['date'] = $data['date'] ?? new DateTime();
你可以这样做:
$data['date'] ??= new DateTime();
数组扩展运算符
现在你可以在数组中使用展开运算符:
$arrayA = [1, 2, 3];
$arrayB = [4, 5];
$result = [0, ...$arrayA, ...$arrayB, 6 ,7];
// [0, 1, 2, 3, 4, 5, 6, 7]
FFI
外部函数接口,简称 FFI,允许从用户区调用 C 代码。这意味着 PHP 扩展可以用纯 PHP 编写并通过 composer 加载。
预加载
预加载是可以带来一些显著的性能改进。预加载允许服务器在启动时于内存中加载 PHP 文件,并使它们持久化可用于所有后续请求(只要不停电)。
性能提升当然需要付出代价:如果预加载文件的源文件发生变化,则必须重启服务。
你可以在此处深入了解它们。
自定义对象序列化
添加了两个新的魔术方法:__serialize
和__unserialize
以上为部分更新内容仅供参考,详情请查看 PHP 的UPGRADING、ChangeLog
沈唁志,一个PHPer的成长之路!
任何个人或团体,未经允许禁止转载本文:《PHP 7.4 中发布了哪些新特性》,谢谢合作!
![](https://jkboy.com/wp-content/uploads/2021/10/Pasted-11.png)