发布于:
2022-07-30 11:43:39
1、 联合类型
一个变量可以定义多种数据类型
function sumNum(int|float $numX, int|float $numY){
return $numX+$numY;
}
2、命名参数
调用函数时跟上key和value
user(name:'',age:1,sex:1)
3、空运算符
以前从数据库查询出数据需要判断,空对象调用会出错。php8可以直接调用
php7及以前
if($user){
$country = $user->country;
}
php8
$country = $user?->country;
还可以连续调用
$country = $company?->$user?->country;
4、构造函数属性提升
以前类的属性要先定义,才能从构造函数传值给类属性,比较繁琐,php8以后可以直接在构造函数里定义类属性
class Person{
public string $name;
public int $gender;
public function __construct(string $name, int $gender){
$this->name = $name;
$this->gender = $gender;
}
}
php8可以这样:
class Person{
public function __construct(public string $name, public int $gender){
}
}