zoukankan      html  css  js  c++  java
  • 工厂模式

    工厂模式可以分为:工厂方法模式和抽象工厂模式。

    工厂方法模式:

    抽象工厂其实是对工厂方法的一种扩充。产品变产品簇。工厂由一个变多个。本质是一样的。

    <?php
    abstract class Driver {
        abstract public function connect();
    }

    class MySQL_Driver extends Driver {
        public function connect() {
            echo 'mysql connect!<br>';
        }
    }

    class DB2_Driver extends Driver {
        public function connect() {
            echo 'db2 connect!<br>';
        }
    }

    class Oricle_Driver extends Driver {
        public function connect() {
            echo 'oricle connect!<br>';
        }
    }

    class DriverFactory {
        public static function factory($type) {
            $classname = $type.'_Driver';
            if(class_exists($classname)) {
                return new $classname;
            } else {
                throw new Exception('Driver not found');
            }   
        }   
    }

    $mysql = DriverFactory::factory('MySQL');
    $mysql->connect();
    ?>

  • 相关阅读:
    HDU 5650 异或
    HDU 5646
    HDU 5645
    P2075 [NOIP2012T5]借教室 区间更新+二分查找
    HDU 5641
    读写分离
    linux执行cmd之一
    html2image
    挂载引起的权限问题
    如何防止sql注入
  • 原文地址:https://www.cnblogs.com/jesseZh/p/3051562.html
Copyright © 2011-2022 走看看