php八大設計模式之工廠模式

2021-07-29 17:21:57 字數 861 閱讀 2900

簡單點來說,就是用到什麼類,就去例項化對應的類。比如:php 可能連線 mysql,可能連線 sqlserver,也可能是 oracle 資料庫,可以動態的去鏈結。

書籍來,看實際**。比如我們在 like 目錄下有一些鏈結資料庫的類:

<?php

// like/mysql.php

class

mysql

}

<?php

// like/oracle.php

class

oracle

}

<?php

// like/sqlserver.php

class

sqlserver

}

我們怎麼在使用者知道更少的情況下讓這些類同時都可以被呼叫呢?

<?php

header("content-type:text/html;charset=utf8");

/** * 提供外部乙個工廠類

*///

spl_autoload_register(function

($name) else

});class

factory catch (exception

$e)

}}//通過工廠類得到所需要的資料庫物件。

$f=factory::getobj("sqlserve");

echo

$f->get();

php八大設計模式之工廠模式

簡單點來說,就是用到什麼類,就去例項化對應的類。比如 php 可能連線 mysql,可能連線 sqlserver,也可能是 oracle 資料庫,可以動態的去鏈結。書籍來,看實際 比如我們在 like 目錄下有一些鏈結資料庫的類 like mysql.php class mysql like ora...

php八大設計模式之橋接模式

乙個抽象產生多種具體的實現方式,單純的通過子類繼承會有子類 過多的子類產生 的現象,系統需要它們之間進行動態耦合。header content type text html charset utf8 在乙個 中,我們都有給使用者發通知訊息的情況。比如有站內傳送 郵箱傳送 及簡訊傳送等等。面向過程形式...

php八大設計模式之職責鏈模式

當發生一種事情時,我們需要要對應職責的事物去處理對應的事情。或者去找最近的類 就是級別最低的 去解決,如果解決不了就順著往上找職責更高的,直到解決為止。注意 一定是要有乙個職責最高的類,否則會有問題。例子 比如某同學罵人,我們要告訴紀委 曠課我們要告訴班長 打架我們要告訴班主任。不同情況對應不同的人...