无名阁,只为技术而生。流水不争先,争的是滔滔不绝。

PHP7.2 新功能介绍 详尽类型声明、对象数据类型、备用的引导和抽象方法覆盖:PHP 7.2的主要新功能 全网首发(图文详解1)

前沿技术 Micheal 1周前 (05-10) 11次浏览 已收录 扫描二维码

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)

喜欢 (0)
[]
分享 (0)
关于作者:
流水不争先,争的是滔滔不绝