PHP中的構造方法和析構方法你知道怎麼用了嗎?
構造方法和析構方法
php中的構造方法是:__construct()
析構方法是: __destruct()
類似於python中的__init__
和__del__
<?php
// 建立一個人類
class Person {
// 下面是人的成員屬性
/*
var $name; // 人的名子
var $sex; // 人的性別
var $age; // 人的年齡
*/
// 定義一個構造方法引數為姓名$name、性別$sex和年齡$age
function __construct($name, $sex, $age) {
// 通過構造方法傳進來的$name給成員屬性$this->name賦初使值
$this->name = $name;
// 通過構造方法傳進來的$sex給成員屬性$this->sex賦初使值
$this->sex = $sex;
// 通過構造方法傳進來的$age給成員屬性$this->age賦初使值
$this->age = $age;
}
// 這個人的說話方法
function say() {
echo "我的名子叫:" . $this->name . " 性別:" . $this->sex . " 我的年齡是:" . $this->age;
}
}
// 通過構造方法建立3個物件$p1、p2、$p3,分別傳入三個不同的實參為姓名、性別和年齡
$p1 = new Person("張三","男", 20);
$p2 = new Person("李四","女", 30);
$p3 = new Person("王五","男", 40);
// 下面訪問$p1物件中的說話方法
$p1->say();
// 下面訪問$p2物件中的說話方法
$p2->say();
// 下面訪問$p3物件中的說話方法
$p3->say();
?>
輸出的結果為:
我的名子叫:張三 性別:男 我的年齡是:20我的名子叫:李四 性別:女 我的年齡是:30我的名子叫:王五 性別:男 我的年齡是:40
解構函式:
<?
// 建立一個人類
class Person {
// 下面是人的成員屬性
/*
var $name; // 人的名子
var $sex; // 人的性別
var $age; // 人的年齡
*/
// 定義一個構造方法引數為姓名$name、性別$sex和年齡$age
function __construct($name, $sex, $age) {
// 通過構造方法傳進來的$name給成員屬性$this->name賦初使值
$this->name = $name;
// 通過構造方法傳進來的$sex給成員屬性$this->sex賦初使值
$this->sex = $sex;
// 通過構造方法傳進來的$age給成員屬性$this->age賦初使值
$this->age = $age;
}
// 這個人的說話方法
function say() {
echo "我的名子叫:" . $this->name . " 性別:" . $this->sex . " 我的年齡是:" . $this->age;
}
// 這是一個解構函式,在物件銷燬前呼叫
function __destruct() {
echo "再見" . $this->name;
}
}
// 通過構造方法建立3個物件$p1、p2、$p3,分別傳入三個不同的實參為姓名、性別和年齡
$p1 = new Person("張三", "男", 20);
$p2 = new Person("李四", "女", 30);
$p3 = new Person("王五", "男", 40);
// 下面訪問$p1物件中的說話方法
$p1->say();
// 下面訪問$p2物件中的說話方法
$p2->say();
// 下面訪問$p3物件中的說話方法
$p3->say();
?>
輸出的結果為:
我的名子叫:張三 性別:男 我的年齡是:20我的名子叫:李四 性別:女 我的年齡是:30我的名子叫:王五 性別:男 我的年齡是:40
再見王五
再見李四
再見張三
相關文章
- 課時41:魔法方法:構造和析構
- Java--構造器和構造方法Java構造方法
- 構造方法構造方法
- 構造方法20201202構造方法
- 繼承中構造方法的特點繼承構造方法
- IO流-File類的概述和構造方法構造方法
- 你知道什麼是三層架構嗎?架構
- 構造器中呼叫動態繫結的方法
- 2.12 構造方法 (5分)構造方法
- 構造方法-2019/2/25構造方法
- 【C++】 46_繼承中的構造與析構C++繼承
- 樹形資料構造的方法
- Python中如何使用構造方法定義類Python構造方法
- 聽說你的資源被盜用了,那你知道 Nginx 怎麼防盜鏈嗎?Nginx
- JavaScript析構+正則的字串解析方法JavaScript字串
- Java中構造方法,構造程式碼塊和靜態程式碼塊執行順序詳解Java構造方法
- java——繼承遇到構造方法Java繼承構造方法
- 小解惑:查詢構造器與集合中的 get 方法
- PHP8的一些新特性之構造方法屬性提升PHP構造方法
- 01 #### `__new__` ,構造方法,建立物件構造方法物件
- 理解 sole() 查詢構造器方法
- WebGL場景的兩種地面構造方法Web構造方法
- 你真的知道Python的字串怎麼用嗎?Python字串
- 這10條PHP7中的禁忌,你知道嗎?PHP
- 用了這麼多年 Spring Boot 你知道他爹有多大背景嗎?Spring Boot
- 解密Spring中的Bean例項化:推斷構造方法(上)解密SpringBean構造方法
- C#中為什麼會出現空靜態構造方法的寫法C#構造方法
- 《Effective C++》閱讀總結(二):類的構造、析構和賦值C++賦值
- JavaScript中Array方法你該知道的正確開啟方法JavaScript
- 搭建團隊架構的重要原則,你知道嗎?架構
- Spring Boot構造流程淺析Spring Boot
- 構造方法記憶體圖流程分析構造方法記憶體
- 03_方法引用與構造器引用
- Effective Java - 靜態方法與構造器Java
- Java基礎、jvm 程式碼塊和構造方法的小問題JavaJVM構造方法
- 父類沒有無參構造方法,子類怎麼辦學習筆記構造方法筆記
- 你知道什麼是後端套模板嗎?他們是怎麼操作的知道嗎?後端
- 你真的知道協程是怎麼來的嗎?