您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
设计模式-简单工厂
发布时间:2017-11-30 09:21:53编辑:雪饮阅读()
<?php
//db接口
interface db{
function conn();
}
class dbmysql implements db{
public function conn(){
echo 'mysql实例化完成';
}
}
class dbsqlite implements db{
public function conn(){
echo 'sqlite实例化完成';
}
}
//简单工厂
class Factory{
public static function createDB($type){
if($type == 'mysql'){
return new dbmysql();
}
else if($type=='sqlite'){
return new dbsqlite();
}
else{
throw new Exception("Error db type",1);
}
}
}
$mysql=Factory::createDB('mysql');
$mysql->conn();
echo "<br/>";
$sqlite=Factory::createDB('sqlite');
$sqlite->conn();
/*
简单工厂让调用者不用知道太多实现细节,在此之前调用者要实例化一个db类要先看接口中有哪些类是可以实例化的。
而现在只需要调用者向工厂传参,工厂根据参数来生产对应的类的实例化对象给调用者,然后调用者直接拿到他想要的实例化后的对象。
*/
?>
关键字词:设计模式,工厂
上一篇:设计模式-观察者模式做风格切换
下一篇:设计模式-面向过程完成举报功能