PHP 中的构造函数
John Wachira
2023年1月30日
2022年5月13日
- 使用 PHP 构造函数初始化类中的对象的属性
-
使用 PHP 构造函数在类中初始化
Object with Parameters
的属性 -
在 PHP 中在子类中启动一个对象并在两个类都有
Individual
构造函数时调用父类构造函数
在本教程中,我们将介绍 PHP 构造函数。我们将看到如何使用 __construct()
函数来初始化类中实例的属性。
我们还将使用该函数来初始化类中具有给定参数的对象的属性。
最后,我们将看到如何在子类
中启动对象并在两个类都有单独的构造函数时调用父类
构造函数。
使用 PHP 构造函数初始化类中的对象的属性
在下面的示例中,我们将创建一个类 Student
并使用 __construct
函数为 new Student
分配其属性。
__construct
函数减少了与使用函数 set_name()
相关的代码数量。
<?php
class Student {
// Define the attributes of your class
public $name;
public $email;
// Initialize the properties of the object you want to create in this class
function __construct($name, $email) {
$this->name = $name;
$this->email = $email;
}
function get_name() {
return $this->name;
}
function get_email() {
return $this->email;
}
}
$obj = new Student("John", "john567@gmail.com");
echo $obj->get_name();
echo "<br>";
echo $obj->get_email();
?>
输出:
John
john567@gmail.com
使用 PHP 构造函数在类中初始化 Object with Parameters
的属性
在下面的示例代码中,我们创建类 Military
并使用 __construct
函数来提供我们创建的对象的属性和参数。
<?php
class Military {
// Define the attributes of the class 'Military'
public $name;
public $rank;
function __construct($name, $rank){
$this->name = $name;
$this->rank = $rank;
}
function show_detail() {
echo $this->name." : ";
echo "Your Rank is ".$this->rank."\n";
}
}
$person_obj = new Military("Michael", "General");
$person_obj->show_detail();
echo "<br>";
$person2 = new Military("Fred", "Commander");
$person2->show_detail();
?>
输出:
Michael : Your Rank is General
Fred : Your Rank is Commander
在 PHP 中在子类中启动一个对象并在两个类都有 Individual
构造函数时调用父类构造函数
<?php
class Student
{
public $name;
public function __construct($name)
{
$this->name = $name;
}
}class Identity extends Student
{
public $identity_id;
public function __construct($name, $identity_id)
{
parent::__construct($name);
$this->identity_id = $identity_id;
}
function show_detail() {
echo $this->name." : ";
echo "Your Id Number is ".$this->identity_id."\n";
}
}
$obj = new Identity('Alice', '1036398');
echo $obj->show_detail();
?>
输出:
Alice : Your Id Number is 1036398
Identity
类扩展了上述代码中的 Student
类。我们使用关键字 parent:
来调用 Student
类的构造函数。
Author: John Wachira
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn