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数据库操作面向对象的优点
Oct 09 PHP
PHP实现变色验证码实例
Jan 06 PHP
php中__destruct与register_shutdown_function执行的先后顺序问题
Oct 17 PHP
3款值得推荐的微信开发开源框架
Oct 28 PHP
在Windows XP下安装Apache+MySQL+PHP环境
Feb 22 PHP
54个提高PHP程序运行效率的方法
Jul 19 PHP
php实现网站文件批量压缩下载功能
Oct 28 PHP
PHP用mb_string函数库处理与windows相关中文字符及Win环境下开启PHP Mb_String方法
Nov 11 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
Jan 05 PHP
php实现图片缩略图的方法
Mar 29 PHP
yii2.0框架数据库操作简单示例【添加,修改,删除,查询,打印等】
Apr 13 PHP
php去除deprecated的实例方法
Nov 17 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性能的编码技巧以及性能优化详细解析
2013/08/24 PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
2013/11/07 PHP
php验证是否是md5编码的简单代码
2014/04/01 PHP
smarty模板引擎从php中获取数据的方法
2015/01/22 PHP
php导出csv文件,可导出前导0实例代码
2016/11/16 PHP
visual studio code 调试php方法(图文详解)
2017/09/15 PHP
jquery+json实现的搜索加分页效果
2010/03/31 Javascript
基于jQuery的仿flash的广告轮播
2010/11/05 Javascript
javascript 兼容各个浏览器的事件
2015/02/04 Javascript
jQuery Mobile操作HTML5的常用函数总结
2016/05/17 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
基于Vue开发数字输入框组件
2017/12/19 Javascript
node作为中间服务层如何发送请求(发送请求的实现方法详解)
2018/01/02 Javascript
不得不知的ES6小技巧
2018/07/28 Javascript
javascript中floor使用方法总结
2019/02/02 Javascript
Vue.js如何使用Socket.IO的示例代码
2019/09/05 Javascript
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
2019/10/10 jQuery
用js限制网页只在微信浏览器中打开(或者只能手机端访问)
2020/12/24 Javascript
js实现超级玛丽小游戏
2020/03/18 Javascript
python正则匹配查询港澳通行证办理进度示例分享
2013/12/27 Python
Python读取properties配置文件操作示例
2018/03/29 Python
Python爬虫——爬取豆瓣电影Top250代码实例
2019/04/17 Python
利用python实现凯撒密码加解密功能
2020/03/31 Python
Python requests及aiohttp速度对比代码实例
2020/07/16 Python
Python eval函数介绍及用法
2020/11/09 Python
西班牙高科技产品购物网站:MejorDeseo
2019/09/08 全球购物
武汉世纪畅想数字传播有限公司 .NET笔试题
2015/06/13 面试题
高中生毕业自我鉴定范文
2013/12/22 职场文书
竞选班干部演讲稿
2014/04/24 职场文书
公关活动策划方案
2014/05/25 职场文书
无房证明范本
2014/09/17 职场文书
2014年学校党建工作汇报材料
2014/11/02 职场文书
《坐井观天》教学反思
2016/02/18 职场文书
党风廉政建设心得体会
2019/05/21 职场文书
Nginx部署vue项目和配置代理的问题解析
2021/08/04 Servers
详解apache编译安装httpd-2.4.54及三种风格的init程序特点和区别
2022/07/15 Servers