编程

PHP 中的 Traits

942 2021-12-10 17:10:23

PHP – Trait 是什么?

什么是 Trait?

在 PHP 中,你只能从父类中继承类。 Trait 突破了 PHP 原有的限制,允许你继承多种行为。

trait 是一个可以包含 抽象和非抽象方法的类。不同的类可以以他们自己的方式使用这些方法。 trait 中的方法可以是 public , private 或者 protected 的

trait 使用关键字 trait 声明, 语法如下

trait FirstTrait {
//do something
}

要在一个类中使用 trait, 使用 use 关键字,在其后紧随 trait 名。语法如下

 class ABC {
    use FirstTrait;
}

举例说明

<?php
trait FirstTrait {
    public function message1() {
       echo "PHP is fun! ";  
   }
}

class Hello {
    use FirstTrait;
}
$hello = new Hello();
$hello->message1();

 

  • 以上的例子,我们声明了一个 trait, 名为 FirstTrait 包含 message1 方法 
  • 我们使用 FirstTrait 创建了一个名叫 Hello 的类
  • 然后我们创建了一个 Hello 类的对象,因为我们通过 use FirstTrait 继承了该 trait 下的所有方法,如 message1()
  •