compose php設計模式 Composite 組合模式
複製程式碼程式碼如下:
/**
* 組合模式
*
* 將物件組合成樹形結構以表示"部分-整體"的層次結構,使得客戶對單一物件和複合物件的使用具有一致性
*/
公用函數add($component){}
公用函式刪除($component){}
公用函數getName(){}
公用函數getUrl(){}
public function display(){}
}
class Menu extends MenuComponent
{
private $_items = array();
私有$_name = null;
公用函數__ $name)
{
$this->_name = $name;
}
public function add($component)
{
$this->_items[] = $component ;
}
公用函數remove($component)
{
$key = array_search($component,$this->_items);
if($key !== false) unset ($this->_items[$key]);
}
public function display()
{
echo "-- ".$this->_name." ------ ---
";
foreach($this->_items as $item)
{
$item->display();
}
}
}
class Item extends MenuComponent
{
private $_name = null;
私有$_url = null;
公用函數__construct($name,$url)
{
{
{
{
{
{
{
{
{
{
{
{
{
{
{
{
{
{
{
{
$this->_name = $name;
$this->_url = $url;
}
public function display()
{
echo $this->_name."#" .$this->_url."
";
}
}
類別客戶端
{
private $_menu = null;
公共函數__construct($ menu)
{
$this->_menu = $menu;
}
public function setMenu($menu)
{
$this->_menu = $menu;
{
$this->_menu = $menu;
}
public function displayMenu()
{
$this->_menu->display();
}
}
//實例一下
//建立選單
$subMenu1 = new Menu("sub menu1");
$subMenu3 = new Menu("子選單3");
$item1 = new Item("163","www.163.com");$item2 = new Item("sina","www.sina.com");
$subMenu1->add( $item1); $subMenu1->add($item2); $item3 = new Item("baidu","www.baidu.com"); $item4 = new Item("google ","www.google.com"); $subMenu2->add($item3); $subMenu2->add($item4); $allMenu = new Menu("所有選單" ); $allMenu->add($subMenu1); $allMenu->add($subMenu2); $allMenu->add($subMenu3); $objClient = 新客戶端($allMenu); $objClient->displayMenu(); $objClient->setMenu($subMenu2); $objClient->displayMenu(); 以上就介紹了compose php設計模式 Composite組合模式,包含了compose方面的內容,希望對PHP教學有興趣的朋友有幫助。
熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

如何利用React和DockerCompose部署複雜的前後端應用概述在現代軟體開發中,使用容器化技術部署應用程式已經成為一種主流和建議的做法。其中,Docker是一種流行的容器化部署工具,React是一個強大的JavaScript庫,用於建立使用者介面。本文將介紹如何使用React和DockerCompose來部署複雜的前後端應用。一、準備工作在開始前

使用DockerCompose輕鬆建置PHP開發環境隨著時代的發展,開發環境建置越來越快速有效率。而DockerCompose作為一種容器編排工具,可以讓我們輕鬆地配置和管理多個Docker容器,從而快速建立PHP開發環境。本文將介紹如何使用DockerCompose建構PHP開發環境,並提供具體的程式碼範例。準備工作首先,我們需要安裝Docker和Doc

以docker的網路管理,容器的ip設定為基礎知識實作nginx負載平衡查看所有docker網路dockernetworkls/*networkidnamedriverscopeb832b168ca9abridgebridgelocal373be82d3a6acomposetest_defaultbridgelocala360425082c468/d時,do

使用DockerCompose、Nginx和MariaDB來建構高可用性的PHP應用程式叢集引言:隨著網路的普及,Web應用程式的開發和部署變得更加複雜。為了提高Web應用程式的可用性和可擴展性,許多開發者開始使用容器化技術來建立高可用性的應用程式叢集。本文將介紹如何使用DockerCompose、Nginx和MariaDB來建構一個高可用性的PHP應用

以docker的網路管理,容器的ip設定為基礎知識實作nginx負載平衡查看所有docker網路dockernetworkls/*networkidnamedriverscopeb832b168ca9abridgebridgelocal373be82d3a6acomposetest_defaultbridgelocala360425082c4625082c46時,do

一、redis設定資訊範本檔名:redis-cluster.tmpl#redis埠port${PORT}#redis存取密碼requirepass123456#redis存取Master節點密碼masterauth123456#關閉保護模式protected-modeno#開啟叢集集集節點設定cluster-config-filenodes.conf#逾時cluster-node-timeout5000#叢集節點IPhost模式為宿主機IP#cluste

透過DockerCompose、Nginx和MariaDB實現PHP應用程式的持續交付概述:隨著雲端運算和容器化技術的迅速發展,越來越多的應用程式開始採用容器化來實現快速交付和部署。本文將介紹如何使用DockerCompose、Nginx和MariaDB來建立一個簡單的PHP應用程序,並實現持續交付的過程。同時,我們將給出具體的程式碼範例,幫助讀者更好地理解

DockerCompose、Nginx和MariaDB的黃金配方:高可用PHP應用程式架構[引言]在當今的網路時代,高可用性對於每個網站和應用程式都是至關重要的。為了實現這一目標,我們需要建立一個穩定、可擴展和高效能的架構。本文將介紹如何使用DockerCompose、Nginx和MariaDB來建立一個高可用的PHP應用程式架構,並提供具體的程式碼範例
