優點:將某個常用類,多個地方需要 new 時,使用工廠模式,方便類的擴充套件與維護
檔案目錄:frame/factory.php
<?php
namespace
frame;
useframe\database;
useframe\register;
class
factory
}//外部呼叫得到$db物件
$db = frame\factory::createdatabase();
//獲取全域性註冊樹中的物件
$db = frame\register::get('db');
//解除安裝全域性註冊樹中的物件
$db = frame\register::_unset('db');
?>
優點:外部無法 new 該類,並且該物件在類本身建立一次,節約資源開銷
檔案目錄:frame/database.php
<?php
namespace
frame;
class
database
//例項化本類
static
function
getinstance
() else
}}//外部呼叫
$db = frame\database::getinstance();
?>
存放目錄:frame/register.php
<?php
namespace
frame;
class
register
/** 解除安裝例項化後的類
* $alias :物件別名
*/static
function
_unset
($alias)
/*
工廠模式 單例模式 註冊樹模式
三種基本設計模式 1 工廠模式 工廠方法或者類生成物件,而不是在 中直接new 2 單例模式 使某個類的物件僅允許建立乙個 3 註冊模式 全域性共享和交換物件 工廠模式 namespace imooc class factory db imooc factory createdatabase 工廠模...
基礎設計模式 單例模式 工廠模式 註冊樹模式
單例模式 通過提供自身共享例項的訪問,單例設計模式用於限制特定物件只能被建立一次。使用場景 一般資料庫例項都會用單例模式 實現 單例設計模式就是要乙個類只能例項化乙個物件。要想讓乙個類只能例項化乙個物件,就要讓類先不能例項化物件,就是構造方法私有。現在,要想例項化該類必須通過訪問靜態方法來例項化改類...
PHP經典設計模式,單例模式 工廠模式 註冊樹模式
單例模式 工廠模式 註冊樹模式 單例模式,該類負責建立自己的物件,同時確保只有單個物件被建立。這個類提供了一種訪問其唯一的物件的方式 class site 例項化本類 public static function getinstance sitename php中文網 return self ins...