适配器模式
- 适配器模式将截然不同的函数接口封装成统一的api
- 实际应用:php数据操作有mysql、mysqli、pdo,可以适配器模式统一成一致的。类似还有cache适配器。将memecache、redis、file、apc等不同缓存,统一成一致
// 使用数据库进行演示
interface IDatabase {
public function connect($host,$user,$passwd,$dbname);
public function query($sql);
public function close();
}
class mysql implements IDatabase {
public function connect($host,$user,$pwd,$dbname){
mysql_connect();
mysql_select_db();
}
public function query ($sql) {
mysql_query($sql);
}
public function close(){
mysql_close()
}
}
class PDO implements IDatabase {
private $pdo;
public function connect($host,$user,$pwd,$dbname){
$this->pdo = new \PDO('mysql:host=$host;dbname=$dbname',$user,$pwd);
}
public function query ($sql) {
$this->pdo->query($sql)
}
public function close(){
unset($this->pdo)
}
}
网友评论