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設計模式介紹 第七章 策略模式...