PHP 設計模式

2021-10-04 11:42:37 字數 1456 閱讀 4999

1.4.1 單例模式

乙個類只能有乙個物件

應用場景:多次請求資料庫只需要乙個連線物件。

實現:三私一公

1、私有的靜態屬性用來儲存物件的單例

2、私有的構造方法用來阻止在類的外部例項化

3、私有的__clone阻止在類的外部clone物件

4、公有的靜態方法用來獲取物件的單例

**

<?php

//三私一公

class

db//私有的__clone()阻止在類的外部clone物件

private

function

__clone()

public

static

function

getinstance()

}//測試

$db1=db

::getinstance()

;$db2=db

::getinstance()

;var_dump

($db1

,$db2);

//object(db)#1 (0) object(db)#1 (0)

1.4.2 工廠模式

特點:傳遞不同的引數獲取不同的物件

<?php

class

productsa

class

productsb

//工廠模式

class

productsfactory}}

//測試

$factory

=new

productsfactory()

;$obj1

=$factory

->

create(1

);$obj2

=$factory

->

create(2

);var_dump

($obj1

,$obj2);

//object(productsa)#2 (0) object(productsb)#3 (0)

1.4.3 策略模式

特點:傳遞不同的引數呼叫不同的策略(方法)

<?php

class

walk

}class

bus}

//策略模式

class

student

}//測試

$stu

=new

student

;$stu

->

play

(new

walk()

);//走著去

$stu

->

play

(new

bus())

;//坐車去

php設計 PHP常用設計模式

1 單例模式指在整個應用中只有乙個物件例項的設計模式 class single public rand static private instance 類直接呼叫 final private function construct private防止外部new this rand mt rand 1,...

PHP設計模式 工廠設計模式

工廠模式,如其名稱一樣,就是乙個工廠,用於建立產品。使用工廠模式的好處就是請求者只需要發出請求,具體的例項化過程交給工廠模式,省去了new的過程。並且如果後期開發,類名發生變化,只需要調整工廠模式中一行new相關 不需要修改一大堆 最簡單的工廠模式,實際上就是乙個switch case結構,通過傳入...

php設計模式

php設計模式介紹 導言 php設計模式介紹 第一章 程式設計慣用法 php設計模式介紹 第二章 值物件模式 php設計模式介紹 第三章 工廠模式 php設計模式介紹 第四章 單條模式 php設計模式介紹 第五章 註冊模式 php設計模式介紹 第六章 偽物件模式 php設計模式介紹 第七章 策略模式...