在基本的MVC框架模型中,會引用到數(shù)據(jù)庫和模板文件。但是不同的開發(fā)者會選擇不同的數(shù)據(jù)庫以及模板引擎。因為在實際開發(fā)的過程中,有可能會更換數(shù)據(jù)庫或者是模板引擎,如果針對每個數(shù)據(jù)庫以及模板引擎都來寫一個接口來調(diào)用的話,將會十分繁瑣。所以工廠類的出現(xiàn),很好的解決了這個問題。
成都創(chuàng)新互聯(lián)公司專注于企業(yè)成都營銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、永靖網(wǎng)站定制設(shè)計、自適應品牌網(wǎng)站建設(shè)、成都h5網(wǎng)站建設(shè)、電子商務(wù)商城網(wǎng)站建設(shè)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為永靖等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。在此我定義一個數(shù)據(jù)庫工廠類以及一個模板引擎工廠類。
1、首先來看看數(shù)據(jù)庫工廠類:
在此假設(shè)我使用的是mysql數(shù)據(jù)庫,數(shù)據(jù)庫工廠類中封裝了實例化數(shù)據(jù)庫(使用何種數(shù)據(jù)庫)的方法以及數(shù)據(jù)庫操作(增刪改查等等)的相關(guān)方法。
在使用數(shù)據(jù)庫工廠類的時,首先確定使用的是什么數(shù)據(jù)庫。在此我就需要在數(shù)據(jù)庫工廠類中寫一個初始化方法,如下所示,$dbtype是指定使用的數(shù)據(jù)庫類型,$config則是傳入該數(shù)據(jù)庫的配置信息。
public static function init($dbtype, $config) { self::$db = new $dbtype; self::$db->connect($config); }初始化數(shù)據(jù)庫后,就可以調(diào)用各個數(shù)據(jù)庫的操作方法,我們在工廠類中定義的方法是可供任意種類的數(shù)據(jù)庫使用的。例如插入方法:
public static function insert($table,$arr){ return self::$db->insert($table,$arr); }在此定義兩個參數(shù),一個表名,一個插入的數(shù)據(jù)。然后調(diào)用的是mysql數(shù)據(jù)庫的insert方法,來實現(xiàn)具體的插入操作。
總結(jié):使用數(shù)據(jù)庫工廠類,即為了所需的數(shù)據(jù)庫相關(guān)功能定義了一個標準,無論傳入什么數(shù)據(jù)庫,都可以獲取到該數(shù)據(jù)庫的實例化對象。我們只需要定義好工廠類中各操作方法以便調(diào)用實際的數(shù)據(jù)庫操作方法即可。
2、模板引擎工廠類
與數(shù)據(jù)庫工廠類相似,在模板引擎工廠類中,不針對任何一種模板文件。同樣的定義了初始化模板引擎的方法,以便確定使用何種模板引擎。
在此假設(shè)我們使用的模板引擎為Smarty模板,初始化方法如下:
public static function init($viewtype,$config){ self::$view = new $viewtype; foreach($config as $key=>$value){ self::$view -> $key = $value; }$viewtype為視圖模板的類型,$config為配置信息(此處為數(shù)組文件)。
在確定好視圖模板引擎后,與數(shù)據(jù)庫工廠類一樣,可以定義相關(guān)功能的方法,來調(diào)用實際的模板引擎操作方法即可。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
文章名稱:(PHP學習筆記)工廠類在MVC框架中的運用-創(chuàng)新互聯(lián)
URL地址:http://muchs.cn/article12/dodsgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、網(wǎng)站營銷、網(wǎng)站導航、全網(wǎng)營銷推廣、電子商務(wù)、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容