php设计模式之工厂模式用法经典实例分析


Posted in PHP onSeptember 20, 2019

本文实例讲述了php设计模式之工厂模式用法。分享给大家供大家参考,具体如下:

<?php
/***
 * @desc 工厂模式
 * ***/
interface DB{
  /*
   * @desc 接口类不体现具体实现,只是为了规范一套规则
   * **/
  public function conn();  
  public function add();
  public function delete();
  public function update();
  public function select();
  public function getLastSql();
}
/**
 * @desc 创建mysqlDb类
 * 接口是用来被实现的,并且每一个方法都必须要被实现
 * **/
class mysqlDb implements DB{
  public function conn(){
    echo "恭喜您,mysql数据库连接成功";
  }
  public function add(){
  }
  public function delete(){
  }
  public function update(){
  }
  public function select(){
  }
  public function getLastSql(){
  }
}
/**
 * @desc 创建sqlServerDb 类
 * **/
class sqlServerDb implements DB{
  public function conn(){
    echo "恭喜您,sqlServer数据库连接成功";
  }
  public function add(){
  }
  public function delete(){
  }
  public function update(){
  }
  public function select(){
  }
  public function getLastSql(){
  }
}
/**
 * @desc 创建一个数据库工程类,用来生产对象
 * **/
class DbFactory{
  static $db = null;
  public static function getDb($type){
    switch($type){
      case 'mysql':
        self::$db = new mysqlDb();
        break;
      case 'sqlServer':
        self::$db = new sqlServerDb();
        break;  
    }
    return self::$db;
  }
}
//测试使用mysql来连接数据库测试工程模式是否成功
$factory = new DbFactory();
$db = $factory->getDb('mysql');
$db->conn();

测试结果输出:

恭喜您,mysql数据库连接成功

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
在PHP中使用与Perl兼容的正则表达式
Nov 26 PHP
PHP面向接口编程 耦合设计模式 简单范例
Mar 23 PHP
php中记录用户访问过的产品,在cookie记录产品id,id取得产品信息
May 04 PHP
php定时删除文件夹下文件(清理缓存文件)
Jan 23 PHP
php 购物车完整实现代码
Jun 05 PHP
探寻PHP脚本不报错的原因
Jun 12 PHP
smarty模板局部缓存方法使用示例
Jun 17 PHP
CodeIgniter安全相关设置汇总
Jul 03 PHP
Zend Framework实现具有基本功能的留言本(附demo源码下载)
Mar 22 PHP
thinkPHP5.0框架API优化后的友好性分析
Mar 17 PHP
Laravel 之url参数,获取路由参数的例子
Oct 21 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
Jan 04 PHP
php设计模式之单例模式用法经典示例分析
Sep 20 #PHP
php数组和链表的区别总结
Sep 20 #PHP
php输出反斜杠的实例方法
Sep 19 #PHP
php实现session共享的实例方法
Sep 19 #PHP
php进行md5加密简单实例方法
Sep 19 #PHP
php解决安全问题的方法实例
Sep 19 #PHP
PHP中16个高危函数整理
Sep 19 #PHP
You might like
php语言注释,单行注释和多行注释
2018/01/21 PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
2018/05/23 PHP
扩展JavaScript功能的正确方法(译文)
2012/04/12 Javascript
Javascript中产生固定结果的函数优化技巧
2013/01/16 Javascript
javascript得到当前页的来路即前一页地址的方法
2014/02/18 Javascript
jQuery .tmpl() 用法示例介绍
2014/08/21 Javascript
jQuery中prev()方法用法实例
2015/01/08 Javascript
js实现用户离开页面前提示是否离开此页面的方法(包括浏览器按钮事件)
2015/07/18 Javascript
js模仿php中strtotime()与date()函数实现方法
2015/08/11 Javascript
jQuery Validate表单验证插件 添加class属性形式的校验
2016/01/18 Javascript
基于Angularjs实现分页功能
2016/05/30 Javascript
微信小程序 选择器(时间,日期,地区)实例详解
2016/11/16 Javascript
详解Nodejs之npm&amp;package.json
2017/06/15 NodeJs
基于daterangepicker日历插件使用参数注意的问题
2017/08/10 Javascript
Three.js基础学习之场景对象
2017/09/27 Javascript
详解webpack-dev-server使用http-proxy解决跨域问题
2018/01/13 Javascript
vue 组件中添加样式不生效的解决方法
2018/07/06 Javascript
微信小程序中时间戳和日期的相互转换问题
2018/07/09 Javascript
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
React服务端渲染原理解析与实践
2021/03/04 Javascript
python使用PyGame模块播放声音的方法
2015/05/20 Python
基于Python实现一个简单的银行转账操作
2016/03/06 Python
利用Python为iOS10生成图标和截屏
2016/09/24 Python
解决pandas .to_excel不覆盖已有sheet的问题
2018/12/10 Python
html5中JavaScript removeChild 删除所有节点
2014/05/16 HTML / CSS
ROSEFIELD手表荷兰官方网上商店:北欧极简设计女士腕表品牌
2018/01/24 全球购物
Feelunique德国官方网站:欧洲最大的在线美容零售商
2019/07/20 全球购物
新西兰最大的天然保健及护肤品网站:HealthPost(直邮中国)
2021/02/13 全球购物
C# .NET面试题
2015/11/28 面试题
优秀士兵个人事迹材料
2014/01/19 职场文书
小学老师寄语大全
2014/04/04 职场文书
《美丽的南沙群岛》教学反思
2014/04/27 职场文书
2015年乡镇流动人口工作总结
2015/05/12 职场文书
幸福来敲门观后感
2015/06/04 职场文书
学校隐患排查制度
2015/08/05 职场文书
WIN10使用IIS部署ftp服务器详细教程
2022/08/05 Servers