在 PHP 中创建和使用静态类

Kevin Amayi 2023年1月30日
  1. 在 PHP 中使用静态变量创建静态类
  2. 在 PHP 中使用静态方法创建静态类
  3. 在 PHP 中创建静态类并在另一个类上调用静态方法
  4. 使用 parent 关键字创建静态类并在子类上调用静态方法
在 PHP 中创建和使用静态类

在 PHP 中,静态类是在程序中只实例化一次的类。它必须有一个静态成员(variable)、静态成员函数(method),或两者兼有。

在 PHP 中使用静态变量创建静态类

让我们创建一个并初始化四个变量。然后我们将使用类名访问它们。

 <?php

class Person {

    //intialize static variable
    public static $name = "Kevin";
    public static $age = 23;
    public static $hobby = "soccer";
    public static $books = "HistoryBooks";
}

    // print the static variables
    echo Person::$name .'<br>';
    echo Person::$age .'<br>';
    echo Person::$hobby .'<br>';
    echo Person::$books .'<br>';
?>

输出:

Kevin
23
soccer
HistoryBooks

在 PHP 中使用静态方法创建静态类

我们将初始化一个名为 simpleProfile() 的方法。然后使用类名调用该方法。

 <?php
class Person {
     public static function simpleProfile() {
        echo "I am a programmer and loves reading historical books.";
  }
}

// Call static method
Person::simpleProfile();
?>

输出:

I am a programmer and loves reading historical books.

在 PHP 中创建静态类并在另一个类上调用静态方法

我们使用 class name 在另一个类上调用 swahiliMan() 方法。

 <?php
class greetings {
    public static function swahiliGreeting() {
      echo "Habari Yako!";
  }
}

class swahiliMan {
    public function greetings() {
      greetings::swahiliGreeting();
  }
}
    $swahiliman1 = new swahiliMan();
    $swahiliman1->greetings();
?>

输出:

Habari Yako!

使用 parent 关键字创建静态类并在子类上调用静态方法

我们用静态变量实例化一个方法。之后,使用 parent 关键字调用该方法并将其分配给扩展静态类的子类上的变量。

class Person {
    protected static function getCountry() {
      return "Australia";
  }
}
// a child class, extends the Person class
class Student extends Person {
    public $country;
    public function __construct() {
      $this->country = parent::getCountry();
  }
}
    $student = new Student;
    echo $student -> country;
?>

输出:

Australia

相关文章 - PHP Class