当前位置:首页 > PHP教程 > php高级应用 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-12-20 10:16:56 浏览: 评论:0 

这篇文章主要介绍了php设计模式之工厂模式用法,结合具体实例形式分析了php工厂模式相关原理、定义、用法及操作注意事项,需要的朋友可以参考下。

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

  1. <?php 
  2. /*** 
  3.  * @desc 工厂模式 
  4.  * ***/ 
  5. interface DB{ 
  6.   /* 
  7.    * @desc 接口类不体现具体实现,只是为了规范一套规则 
  8.    * **/ 
  9.   public function conn();   
  10.   public function add(); 
  11.   public function delete(); 
  12.   public function update(); 
  13.   public function select(); 
  14.   public function getLastSql(); 
  15. } 
  16. /** 
  17.  * @desc 创建mysqlDb类 
  18.  * 接口是用来被实现的,并且每一个方法都必须要被实现 
  19.  * **/ 
  20. class mysqlDb implements DB{ 
  21.   public function conn(){ 
  22.     echo "恭喜您,mysql数据库连接成功"; 
  23.   } 
  24.   public function add(){ 
  25.   } 
  26.   public function delete(){ 
  27.   } 
  28.   public function update(){ 
  29.   } 
  30.   public function select(){ 
  31.   } 
  32.   public function getLastSql(){ 
  33.   } 
  34. } 
  35. /** 
  36.  * @desc 创建sqlServerDb 类 
  37.  * **/ 
  38. class sqlServerDb implements DB{ 
  39.   public function conn(){ 
  40.     echo "恭喜您,sqlServer数据库连接成功"; 
  41.   } 
  42.   public function add(){ 
  43.   } 
  44.   public function delete(){ 
  45.   } 
  46.   public function update(){ 
  47.   } 
  48.   public function select(){ 
  49.   } 
  50.   public function getLastSql(){ 
  51.   } 
  52. } 
  53. /** 
  54.  * @desc 创建一个数据库工程类,用来生产对象 
  55.  * **/ 
  56. class DbFactory{ 
  57.   static $db = null; 
  58.   public static function getDb($type){ 
  59.     switch($type){ 
  60.       case 'mysql': 
  61.         self::$db = new mysqlDb(); 
  62.         break; 
  63.       case 'sqlServer': 
  64.         self::$db = new sqlServerDb(); 
  65.         break;   
  66.     } 
  67.     return self::$db; 
  68.   } 
  69. } 
  70. //测试使用mysql来连接数据库测试工程模式是否成功 
  71. $factory = new DbFactory(); 
  72. $db = $factory->getDb('mysql'); 
  73. $db->conn(); 

测试结果输出:

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

Tags: php设计模式 php工厂模式

分享到: