php设计模式--适配器模式

定义:将某个对象的接口适配为另一个对象所期望的接口

解释(自己理解,不妥的地方请指教):通过适配器,将一些具有特定功能的类,组合到一起。比如,插线板将两孔,三孔都集成到自己身上。

好处:用户几乎不用知道底层代码,直接调用,这样能适应不同的需求。

缺点:代码量会大幅度增加。

<?php 
//数据库连接规范--接口定义规范
interface DBInterface
{
	// public function mysql_connect();
	// public function oracle_connect();
	// public function sqlit_connect();
	public function connect();
}

class Mysql
{
	public function connect()
	{
		echo 'connection mysql'.'<br/>';
	}
}

class Oracle
{
	public function connect()
	{
		echo 'connect oracle'.'<br/>';
	}
}

class Sqlit
{
	public function connect()
	{
		echo 'connect sqlit'.'<br/>';
	}
}

class DBConnectAdapter implements DBInterface
{
	
	private $db;
	public function __construct($dbName='Mysql')
	{
	        $dbName = ucfirst($dbName);
	        $this->db = new $dbName;
	}
	public function connect()
	{
		$this->db->connect();
	}

}

class Client 
{
	public static function connect($dbType = 'Mysql')
	{
		$mysql = new DBConnectAdapter($dbType);
		$mysql->connect();
	}
}
Client::connect('Sqlit|sqlit');
Client::connect('Mysql|mysql');
Client::connect('Oracle|oracle');

          

你可能感兴趣的:(php设计模式--适配器模式)