php 简单工厂模式
1. 简单工厂模式
简单工厂,也称静态工厂,不属于GoF23种设计模式。可以说是所有的设计模式中大家可能最容易理解的模式
传入指定数据,返回相应的内容
使用接口更加符合面向对象的规范
createMessage 不一定使用 static,看自己业务情况决定
增加发送渠道时,添加新类继承 Message 接口,实现 send() 方法,switch 添加 new 类
2. 实列
interface Message {
public function send(string $msg);
}
class AliYunMessage implements Message {
public function send(string $msg) {
return '阿里云短信内容:' . $msg;
}
}
class BaiduYunMessage implements Message {
public function send(string $msg) {
return '百度SMS短信内容:' . $msg;
}
}
Class MessageFactory {
public static function createFactory($type) {
switch($type) {
case 'Ali':
return new AliYunMessage();
case 'BD':
return new BaiduYunMessage();
default:
return null;
}
}
}
$message = MessageFactory::createMessage('Ali');
echo $message->send('您有新的短消息,请查收');

浙公网安备 33010602011771号