PHP7.2 新功能介绍
PHP 7.2 在 2017 年 11 月份正式发布,其中引入了一些新特性,如详尽的类型声明,新的对象数据类型,备用的引导 (Trailing Commas),抽象方法覆盖等。这些功能在 PHP 7.2 版本中都得到了广泛的应用,让我来给你详细地介绍一下。
一,详尽的类型声明
PHP 7.2 引入了详尽的类型声明,这意味着程序员可以指定具体的参数类型,返回类型等。因此,编程语言更能自我表述,错误更容易追踪。下面是一段示例代码:
function getSum(float $a, float $b): float {
return $a + $b;
}
echo getSum(1.2, 5.2);
在这个例子中,getSum
函数只接受float
数据类型的参数,并且返回类型也事先定义为float
类型,所以该函数有更好的读性和可维护性。
二,对象类型
PHP 7之前的版本,只有七种数据类型,分别为: Integer(整型), Float(浮点型), String(字符串型), Boolean(布尔型), Array(数组), Resource(资源)和 NULL(空值)。而在 PHP 7.2 中,加入了一个新的预定义的对象类型,可以用来匹配任何实例化的类,而不仅仅是某一个特定的类。以下是一个示例代码:
function test(object $obj): object{
return new SplQueue();
}
在这个例子中,test
函数接受任何对象类型的参数,并且返回类型也定义为对象类型,这增加了代码的灵活性。
三,备用的引导
PHP 7.2 允许你在函数调用和定义中的最后一个参数之后使用备用的引导。这在多行参数的情况下会使代码看起来更整洁。这是一个例子:
function foo(
$arg1,
$arg2,
) { /* body */ }
foo(
$xxx,
$yyy,
);
```
这里的代码示例中,所有参数的最后都有一个逗号,这和其他语言特性(例如数组和导入列表)保持了一致,可以使代码的格式更规整,且对于版本控制友好。
四,抽象方法覆盖
PHP 7.2 允许你在子类中使用抽象类覆盖父类中的同名抽象方法。示例代码如下:
```php
abstract class ParentClass {
abstract protected function test();
}
abstract class ChildClass extends ParentClass {
abstract protected function test();
}
在这个例子中,子类ChildClass
中抽象方法test()
覆盖了父类ParentClass
中的同名抽象方法。
以上就是 PHP 7.2 主要的新功能,希望能对你有所帮助。还有其他什么我可以帮你解答的吗?
PHP Fatal error: Uncaught Error:解决方法 PHP中“Fatal-error:-Uncaught-Error”解决方法 全网首发(图文详解1)
1.6万套微信小游戏源码(H5+小程序游戏)和小程序源码最新合集 微信小程序游戏源码最新合集 全网首发(图文详解1)