ini_set('error_reporting', e_all);
ini_set('display_errors', 'on');
目的:分級處理;整體與結構 樹結構;
<?phpini_set('error_reporting', e_all
);ini_set('display_errors', 'on');
abstract
class
company
abstract
function add(company $company
);
abstract
function remove(company $company
);
abstract
function display($depth);}
class subcompany extends
company
public
function add(company $company
)
function remove(company $company
) }
function display($depth
)
$pre.=$this->name."
";
echo
$pre
;
foreach ($this->sub_companys as
$v)
}} class moneydept extends
company
function add(company $company
)
function remove(company $company
)
function display($depth
)
$pre.=$this->name."
";
echo
$pre
; }
}class itdept extends
company
function add(company $company
)
function remove(company $company
)
function display($depth
)
$pre.=$this->name."
";
echo
$pre
; }
}$root = new subcompany("北京總公司");
//$a = new moneydept("總公司財務部");
$root->add(new moneydept("總公司財務部"));
$root->add(new itdept("總公司技術部門"));
$sh = new subcompany("上海分公司");
$sh->add(new moneydept("上海分公司財務部"));
$sh->add(new itdept("上海分公司技術部門"));
$root->add($sh
);$root->display(1);
echo "
";$root->remove($sh
);$root->display(3);
PHP 設計模式 組合模式
組合模式 將物件組合成樹形結構來表現 部分 整體 的層次結構。目的 重點 使得客戶以一致的方式處理單個物件以及物件的組合。header content type text html charset utf 8 定義抽象類,抽象方法,方法引數根據 黎克特制替換原則 傳遞父類。abstract clas...
2018 2 11 PHP設計模式 組合器模式
layout title date author desc in head post php設計模式之組合器模式 2018 02 11 20 00 02 0800 南丞 設計模式 design pattern 是一套被反覆使用 多數人知曉的 經過分類編目的 設計經驗的總結。使用設計模式是為了可重用 ...
PHP設計模式之組合模式
當我們的乙個物件可能代表乙個單一的實體,或者乙個組合的實體,但是仍然需要通過同樣的方式被使用時,這種情形則適合使用組合模式的設計。組合模式是一種結構型模式。當看了書上的解釋之後,並不是很理解,遂去翻了翻 大化設計模式 以下為原文截圖 看完這本書上的解釋之後也不是很理解,但是能夠進行編碼了,以下為組合...