PHP7.4新增哪些特性?废弃了哪些旧功能?
- 内容介绍
- 文章标签
- 相关推荐
本文共计963个文字,预计阅读时间需要4分钟。
PHP 7.4 新特性发布,新增多项特性,简化代码编写。
1. 属性类型增强:`phpclass User { public int $age; public string $name; } $user=new User(); $user->age=30;`
PHP7.4 新特性
PHP7.4 上月 28 号已经发布了。又带来了一些新特性。可以让我们的代码写的更少了。
1. 属性添加限定类型
<?php class User { public int $age; public string $name } $user = new User(); $user->age = 10; $user->name = "张三"; //error $user->age = "zhang";//需要传递int
2. 箭头函数
这个特性基本上参考 Js 的 ES6 的语法。可以让我们的代码写的更少。如果你的代码有 fn 这个函数。可能会冲突
<?php $factor = 10; $nums = array_map(fn($n)=>$n * $factor,[1,2,3]);//[10,20,30] //之前的写法 $nums = array_map(function($num)use($factor){ return $num * $factor; },[1,2,3])
3. 有限返回类型协变与参数类型逆变
仅当使用自动加载时,才提供完全协变 / 逆变支持。在单个文件中,只能使用非循环类型引用,因为所有类在被引用之前都必须可用。
本文共计963个文字,预计阅读时间需要4分钟。
PHP 7.4 新特性发布,新增多项特性,简化代码编写。
1. 属性类型增强:`phpclass User { public int $age; public string $name; } $user=new User(); $user->age=30;`
PHP7.4 新特性
PHP7.4 上月 28 号已经发布了。又带来了一些新特性。可以让我们的代码写的更少了。
1. 属性添加限定类型
<?php class User { public int $age; public string $name } $user = new User(); $user->age = 10; $user->name = "张三"; //error $user->age = "zhang";//需要传递int
2. 箭头函数
这个特性基本上参考 Js 的 ES6 的语法。可以让我们的代码写的更少。如果你的代码有 fn 这个函数。可能会冲突
<?php $factor = 10; $nums = array_map(fn($n)=>$n * $factor,[1,2,3]);//[10,20,30] //之前的写法 $nums = array_map(function($num)use($factor){ return $num * $factor; },[1,2,3])
3. 有限返回类型协变与参数类型逆变
仅当使用自动加载时,才提供完全协变 / 逆变支持。在单个文件中,只能使用非循环类型引用,因为所有类在被引用之前都必须可用。

