在 PHP 中创建和使用静态类
Kevin Amayi
2023年1月30日
2022年5月13日
在 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