您现在的位置是:首页 > PHP框架交流PHP框架交流
PHP8.2新特性 析取范式 (DNF)类型 允许 null、false 和 true 作为独立类型 Traits 中的常量
上善若水2024-03-06 11:17:55【PHP框架交流】 1202人已围观
简介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)
随机图文
-
最新经典幽默段子 哄女生开心
一、有句话藏在我心底很久很久,我一直很想告诉你,可是面对你时总是难说出口,一分别总是懊悔万千,实在无奈只能发条短信来传递:啥时候请我吃饭啊!二、小明刚认识几个字,一次同他爸去商场,下雨天,商场摆着一个温馨提示牌,小明看后边念边做动作,“小心地滑”,他爸来不及纠正,他立马摔了一跤。三、甲:等一等,我有一个天大的秘密要告诉你。乙:快说,什么秘密?甲:我发现,德高望众的老校长恩恩跟咱们一样 -
PHP8.2新特性 弃用动态属性,更加严谨
PHP8.2新特性弃用动态属性,更加严谨,动态属性的创建已被弃用,以帮助避免错误和拼写错误,除非该类通过使用#[\AllowDynamicProperties]属性来选择。stdClass允许 -
你能够对我笑一下吗?
1、 美男,有男朋友吗,没有的话,介不介意有一个,有的话,介不介意换一个,不换啊,介不介意多一个? 2、 你晓得我烧烤的时分先烤甚么吗? 羊肉串,面筋… (烤)思索你 3、 哎,你额头上有个印记啊 啊,哪有啊 你打开头发看一下 (趁她扒开头发亲她一下) 是我的唇印啦! 4、 你能够对我笑一下吗? 为何? 我这杯咖啡忘放糖了! 5、 (一同喝工具)好甜啊! 也不怎样甜啊! 我说的是你! 6、 你晓得最幸运的数字是几吗? 8?6? 都不合错误,是5 为何? 你把手伸出看看,(然后你和她十 -
csv设置utf8格式 导入csv乱码记事本转utf8格式 无须office wps其他软件
我们在项目开发的时候经常会使用csv用来导入导出数据,打开csv的时候文件显示正常,但是遇到特殊符号时,显示乱码,我们一般在php里手动进行转码,有时候比较麻烦,我们直接将原csv转换成utf8格式就