<?php
//共同接口
interface db
{
function coon();
}
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 dbsqliteFactory implements Factory
{
public function createDB()
{
return new dbsqlite();
}
}
//====服务器端实习添加oracle类
//前面的代码不用改
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();