php设计模式(1)-工厂模式

<?php
interface DB{
function conn();
}

class MysqlDB implements DB{
public function conn(){
echo "mysql conn";
}
}

class OracleDB implements DB{
public function conn(){
echo "oracle conn";
}
}

interface Factory{
function createDB();
}

class MysqlFactory implements Factory{
public function createDB(){
return new MysqlDB();
}
}

class OracleFactory implements Factory{
public function createDB(){
return new OracleDB();
}
}

//调用

$facroty = new MysqlFactory();
$db = $facroty->createDB();
$db->conn();

$facroty = new OracleFactory();
$db = $facroty->createDB();
$db->conn();

 

实现了对象修改是封闭,对于扩展是开放。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。