php設計模式之工廠模式

<?php
/***
* @desc 工廠模式
* ***/php

interface DB{
/*
* @desc 接口類不體現具體實現,只是爲了規範一套規則
* **/

public function conn();

public function add();

public function delete();

public function update();

public function select();

public function getLastSql();

}mysql

/**
* @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(){

}
}sql


/**
* @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數據庫鏈接成功對象

相關文章
相關標籤/搜索