有關PHP中MVC的開發經驗分享

2022-10-06 13:39:15 字數 1405 閱讀 1051

一、入口

入口檔案可以是單檔案也可以是多檔案,我現在用的基本屬多檔案,但是入口檔案內容基本都是一樣,為以後的修改其它的入口方式做基礎,

複製** **如下:

php

require 'command/config.php';

require 'command/app.php';

app::run($config);

?>

首先不用說大家也看得出來,載入系統配置檔案,然後通過引擎來載入系統配置。

二、引程式設計客棧擎

複製** **如下:

public function run($config)

defined('keheng_debug') or define('keheng_debug',true); // 是否除錯模式

self::setpath(); //設定系統路徑

self::getdatabase(); //測試資料庫

self::loadlib(); //載入庫

self::getrouteconfig(); //執行路由並載入控制器 }

引擎裡面首先設定配置檔案,再測試系統引數,載入系統模組,取得配置在的**資訊檔案,設定**需要的路徑,測試系統配置裡面的資料庫引數,載入庫檔案,最後是載入路由獲取請求位址。不知道這樣的流程對不對,只是我根據自己的學習自己編寫的一套而已,但裡面卻缺少快取,具體快取應該怎麼樣的設定。

這裡的資料庫測試是根據配置用哪一型別的資料庫,再載入對該程式設計客棧型別資料庫操作的封裝檔案。

三、路由

以下為上面的最後乙個函式,載入控制器檔案,根據配置檔案獲得請求方式。

複製** **如下:

public function getrouteconfig()

if(file_exists(contr_dir.'controller.php'))else }

四、控制器

控制器檔案也蠻簡單,只是根據路由分析出的位址來載入模型檔案和視**件,

複製** **如下:

class controllerelse

}else

unset($views);

}else

} }

但裡面有個注意的是模型檔案裡面需要輸出的資料全部都是通過views這樣乙個類進行輸出,包裡視**件裡面所有的系統引數等。不知道,這種方法是不是顯示得多此一舉,原來是想把所有要輸出的資料進行封裝。

其它的模板檔案也都是用類進行了封裝,具體怎麼寫高人應該都知道了吧,這些只是我的個人見解,但是快取應該怎麼寫,現在還是乙個模糊的概念,是不是在讀取資料的時候,方向應該是讀取快取,然後再判斷快取是否存在,再判斷是否需要建立快取呢?具體操作方法還是不是很明白。希望能有高人指點指點。

本文標題: 有關php中mvc的開發經驗分享

本文位址:

PHP中的MVC運用

11.15.2011,架構,by admin.首先我來舉個例子 乙個簡單的文章顯示系統 簡單期間,我們假定這個文章系統是唯讀的,也就是說這個例子將不涉及文章的發布,現在開始了。由於只涉及資料庫的讀取,所以我定義了兩個inte ce 1inte ce dataoperation 2 上面這inte c...

iOS開發中的MVC

m model,個人理解為業務邏輯,也就是你的程式處理了一些什麼樣的業務,一般是一系列的api供controller呼叫 v view,檢視,也就是你的程式外觀 ui,你所能看到,觸控到的,程式的展現 c controller,控制器,個人理解為程式邏輯,作為m和v溝通的橋梁,在ios開發中經常被放...

php中的MVC模式運用

php中的mvc模式運用 首先我來舉個例子 乙個簡單的文章顯示系統 簡單期間,我們假定這個文章系統是唯讀的,也就是說這個例子將不涉及文章的發布,現在開始了。由於只涉及資料庫的讀取,所以我定義了兩個inte ce inte ce dataoperation 上面這inte ce定義了讀取資料的介面,s...