PHP常用的設計模式

2021-07-29 14:55:03 字數 1645 閱讀 9846

工廠模式:

工廠模式

是一種類,它具有為您建立物件的某些方法。您可以使用工廠類建立物件,而不直接使用new。這樣,如果您想要更改所建立的物件型別,只需更改該工廠即可。使用該工廠的所有**會自動更改。

<?php

inte***ce iuser

class user implements iuser

public static function create( )

public function __construct( $id )

public function getname() }

$uo = user::load( 1 );

echo( $uo->getname()."\n" );

?>

單元素模式

<?php

require_once("db.php");

class databaseconnection

private $_handle = null;

private function __construct()

public function handle() }

print( "handle = ".databaseconnection::get()->handle()."\n" );

print( "handle = ".databaseconnection::get()->handle()."\n" );

?>

觀察者模式

<?php

inte***ce iobserver

inte***ce iobservable

class userlist implements iobservable

public function addobserver( $observer ) }

class userlistlogger implements iobserver

}$ul = new userlist();

$ul->addobserver( new userlistlogger() );

$ul->addcustomer( "jack" );

?>

命令鏈模式

<?php

inte***ce icommand

class commandchain

public function runcommand( $name, $args )

}}class usercommand implements icommand

}class mailcommand implements icommand

}$cc = new commandchain();

$cc->addcommand( new usercommand() );

$cc->addcommand( new mailcommand() );

$cc->runcommand( 'adduser', null );

$cc->runcommand( 'mail', null );

?>

php設計 PHP常用設計模式

1 單例模式指在整個應用中只有乙個物件例項的設計模式 class single public rand static private instance 類直接呼叫 final private function construct private防止外部new this rand mt rand 1,...

PHP常用設計模式 單例模式

單例模式在設計模式中屬於建立型模式,這種模式涉及到乙個單一的類,該類負責建立自己的物件,同時確保只有單個物件被建立。解決問題 當乙個全域性使用的類頻繁地建立與銷毀,你想控制例項數目,節省系統資源的時候。final使類不能繼承 final class singleton 私有clone方法 priva...

PHP常用設計模式 裝飾器模式

裝飾器模式向乙個現有的物件新增新的功能,同時又不改變其結構。這種型別的設計模式屬於結構型模式,它是作為現有的類的乙個包裝。解決了因擴充套件功能增多產生的繼承的問題 class text public function show class docorator class docorator publ...