您现在的位置是:首页 > PHP框架交流PHP框架交流
PHP8.0新特性(4) 联合类型
上善若水2024-03-05 09:48:48【PHP框架交流】 545人已围观
简介熟悉PHP8.0的新特性,联合类型,现在定义好联合类型后,创建联合类型不对的时候会抛出异常了。联合类型 相较于以前的 PHPDoc 声明类型的组合, 现在可以用原生支持的联合类型声明取而代之,并在运行
熟悉PHP8.0的新特性,联合类型,现在定义好联合类型后,创建联合类型不对的时候会抛出异常了。
联合类型 相较于以前的 PHPDoc 声明类型的组合, 现在可以用原生支持的联合类型声明取而代之,并在运行时得到校验。
class Number {
public function __construct(
private int|float $number//PHP8.0新特性构造器属性提升写法
) {}
}
1.输入数字
$n = new Number(10); // TypeError
var_dump($n);
#打印结果
class Number#1 (1) {
private int|float $number =>
int(10)
}
2.输入小数
$n = new Number(10); // TypeError
var_dump($n);
#打印结果
class Number#1 (1) {
private int|float $number =>
double(10.5)
}
3.输入带引号的小数
$n = new Number("10.5"); // TypeError
var_dump($n);
#打印结果
class Number#1 (1) {
private int|float $number =>
double(10.5)
}
4.输入带引号的整数
$n = new Number("10"); // TypeError
var_dump($n);
#打印结果
class Number#1 (1) {
private int|float $number =>
int(10)
}
5.输入带非数字的字符串
$n = new Number("10a"); // TypeError
var_dump($n);
打印结果,报错!
Fatal error: Uncaught TypeError: Number::__construct(): Argument #1 ($number) must be of type int|float, string given, called in D:\phpstudy_pro\WWW\testphp8_0\PHP8_0\union_types.php on line 10 and defined in D:\phpstudy_pro\WWW\testphp8_0\PHP8_0\union_types.php on line 5
TypeError: Number::__construct(): Argument #1 ($number) must be of type int|float, string given, called in D:\phpstudy_pro\WWW\testphp8_0\PHP8_0\union_types.php on line 10 in D:\phpstudy_pro\WWW\testphp8_0\PHP8_0\union_types.php on line 5
Tags: PHP8.0
很赞哦! (0)
随机图文
-
php 自己打包一个composer包
今天尝试自己自己封装一个包,以后就可以直接composer安装方便复用,一开始看到别人有将官方提供 的包给做成composer包,方便使用,记录下自己的过成. 首先准备一个已经初始话过的仓库地址 并 -
shiro 匹配md5加密后的密码HashedCredentialsMatcher
shiro 匹配md5加密后的密码,shiro为我们提供好了使用md5规则,同时还可以设置md5的加密次数.我们在SimpleAuthenticationInfo里面就只用将加密后的密码丢进去,shi -
springboot博客搭建教程 循序渐进,持续更新...
springboot博客搭建教程,使用springboot+thymeleaf+连接数据库搭建,适合新手,springboot的学习不是光看看视频就能学会,光看不敲代码不会有所提高,从简单的博客项目中 -
一个让人瞬间爆笑的笑话
1、有一个女孩子平常被妈妈管的很严。有一次被男朋友叫去看电影,临出门时妈妈嘱咐说:“出去要放聪明点不要被男人占了便宜,如果他摸你上面你就说不要,摸你下边你就说停。”女孩说记住了,晚上回来她妈问她有没有被占便宜,女孩哭着说:“占了,他上下一起摸我,我就照你教的说:不要停,不要停。 2、幸福就是痒的时候挠一下,不幸就是痒了但挠不着,更不幸的是,很久以来灵魂和肉体都感觉不到那种蠢蠢欲动的痒了。 3、