您现在的位置是:首页 > PHP框架交流PHP框架交流
PHP8.2新特性 析取范式 (DNF)类型 允许 null、false 和 true 作为独立类型 Traits 中的常量
上善若水2024-03-06 11:17:55【PHP框架交流】 189人已围观
简介PHP8.2新特性析取范式(DNF)类型,DNF类型允许我们组合union和intersection类型,遵循一个严格规则:组合并集和交集类型时,交集类型必须用括号进行分组。1.析取范式
PHP8.2新特性 析取范式 (DNF)类型,DNF 类型允许我们组合 union 和 intersection类型,遵循一个严格规则:组合并集和交集类型时,交集类型必须用括号进行分组。
1.析取范式 (DNF)类型
旧版本写法
class Foo {
public function bar(mixed $entity) {
if ((($entity instanceof A) && ($entity instanceof B)) || ($entity === null)) {
return $entity;
}
throw new Exception('Invalid entity');
}
}
新版写法
class Foo {
public function bar((A&B)|null $entity) {
return $entity;
}
}
2.允许 null、false 和 true 作为独立类型
class Falsy
{
public function almostFalse(): bool { /* ... */ *}
public function almostTrue(): bool { /* ... */ *}
public function almostNull(): string|null { /* ... */ *}
}
新版将null,false,true独立出来了。
class Falsy
{
public function alwaysFalse(): false { /* ... */ *}
public function alwaysTrue(): true { /* ... */ *}
public function alwaysNull(): null { /* ... */ *}
}
3.Traits 中的常量
trait Foo
{
public const CONSTANT = 1;
}
class Bar
{
use Foo;
}
var_dump(Bar::CONSTANT); // 1
var_dump(Foo::CONSTANT); // Error
您不能通过 trait 名称访问常量,但是您可以通过使用 trait 的类访问常量。
4.新的“随机”扩展
新的随机扩展官方文档https://www.php.net/manual/zh/book.random.php
随机”扩展为随机数生成提供了一个新的面向对象的 API。这个面向对象的 API 提供了几个类(“引擎”),提供对现代算法的访问,这些算法在对象中存储其状态,以允许多个独立的可播种序列,而不是依赖于使用 Mersenne Twister 算法的全局种子随机数发生器(RNG)。
\Random\Randomizer 类提供了一个高级接口来使用引擎的随机性来生成随机整数、随机排列数组或字符串、选择随机数组键等。
Tags: PHP8.2
很赞哦! (0)
随机图文
-
总结了197条简短的抖音撩妹套路
你是长不大的张志明,我是没有安全感的余春娇。 志明找到了他的春娇,我找到了我的****(**表示对方的名字)。 小姐姐,我问你一个问题,冬天了,你喜欢喝啥?喝奶茶。你知道我喜欢喝啥吗?我喜欢呵护你。 对不起啊,没有经过你的允许就.......就喜欢上了你 -
springboot 自带定时任务
定时执行是比较常见的功能,springboot自带了定时执行,上手第一个hello cron第一个定时脚本执行… 搭建springboot项目编写需要执行cron定时脚本添加注解加入容器以及开启定时脚 -
你能够对我笑一下吗?
1、 美男,有男朋友吗,没有的话,介不介意有一个,有的话,介不介意换一个,不换啊,介不介意多一个? 2、 你晓得我烧烤的时分先烤甚么吗? 羊肉串,面筋… (烤)思索你 3、 哎,你额头上有个印记啊 啊,哪有啊 你打开头发看一下 (趁她扒开头发亲她一下) 是我的唇印啦! 4、 你能够对我笑一下吗? 为何? 我这杯咖啡忘放糖了! 5、 (一同喝工具)好甜啊! 也不怎样甜啊! 我说的是你! 6、 你晓得最幸运的数字是几吗? 8?6? 都不合错误,是5 为何? 你把手伸出看看,(然后你和她十 -
PHP8.0新特性(2) 注解的使用教程 终于不用三方库支持注解了
PHP8.0新特性之二注解,注解的使用教程终于不用三方库那种,官方加入了注解,注解用于依赖注入,权限认证,路由生成还是非常合适的,只可惜注解来的太晚,用的人太少了,大部分公司还是用的旧版本PHP.简单