//公共接口
interface db(){
function conn();
}
interface Factory{
function createDB();
}
//服务端
class dbmysql implements db {
public function conn(){
echo '连接上了mysql';
}
}
class dbsqlite implements db {
public function conn(){
echo '连接上了sqlite';
}
}
class mysqlFactory implements Factory {
public function createDB(){
return new dbmysql();
}
}
class sqliteFactory implements Factory {
public function createDB(){
return new dbsqlite();
}
}
class dboracle implements db {
public function conn(){
echo '连接上了oracle';
}
}
class oracleFactory implements Factory {
public function createDB(){
return new dboracle();
}
}
$fact = new mysqlFactory();
$db = $fact->createDB();
$db->conn();
$fact = new sqliteFactory();
$db = $fact->createDB();
$db->conn();
$fact = new oracleFactory();
$db = $fact->createDB();
$db->conn();