php 設計模式 組合器模式

2022-08-10 08:57:14 字數 1770 閱讀 6848

ini_set('error_reporting', e_all);

ini_set('display_errors', 'on');

目的:分級處理;整體與結構 樹結構;

<?php

ini_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設計模式之組合模式

當我們的乙個物件可能代表乙個單一的實體,或者乙個組合的實體,但是仍然需要通過同樣的方式被使用時,這種情形則適合使用組合模式的設計。組合模式是一種結構型模式。當看了書上的解釋之後,並不是很理解,遂去翻了翻 大化設計模式 以下為原文截圖 看完這本書上的解釋之後也不是很理解,但是能夠進行編碼了,以下為組合...