W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
在 ModPHP 中,MVC 模式被定義成下面這樣:
在 ModPHP 中,存儲數(shù)據(jù)的模型(數(shù)據(jù)表)叫做模塊數(shù)據(jù)表,操作數(shù)據(jù)的方法也就是控制器。模型與控制器之間的界限如此模糊的原因是因為:ModPHP 中,控制器基本上是自然存在的,它們是模塊被添加到項目中開始,就自動繼承于 Mod 核心類。例如 mod::add(),mod::update(),mod::delete(),mod::get() 等,它們是現(xiàn)成的操作和獲取數(shù)據(jù)的基本方法,你不需要自己的去實現(xiàn)。例如用戶(User)模塊,只需要繼承 Mod 類,不需要做其他什么,就可以通過 user::add() 添加用戶,通過 user::update() 更新用戶,通過 user::delete() 刪除用戶,以及通過 user::get() 獲取用戶。你不需要自己連接數(shù)據(jù)庫,選擇數(shù)據(jù)表,編寫查詢,這一切都是可以信手捏來的。
在 ModPHP 中,是強(qiáng)調(diào)前后端一致的,在后端中可以使用的方法,在前端依然可以隨心所欲地進(jìn)行訪問。只需要通過程序入口文件 mod.php,它是一個訪問控制器,無論是 PHP 引用,還是前端 URL 調(diào)用,只用訪問 mod.php,就可以和模塊進(jìn)行溝通,調(diào)用模塊的操作方法。例如下面的方法是等效的:
include 'mod.php';
$result = user::get(array('user_id'=>1));
print_r($result);
<script>
$.get('mod.php?user::get|user_id:1', function(result){
console.log(result);
});
</script>
在其他 PHP 框架中,視圖一般都要對應(yīng)某個控制器,并由控制器將其返回給瀏覽器。但 ModPHP 不這么做,這樣對模板開發(fā)的限制太多,例如變量會被濫用,多模板也很難實現(xiàn),即使實現(xiàn)也是很固定的,因為控制器的設(shè)計是固定的。在 ModPHP 中,視圖和模型、控制器之間是沒有上下文關(guān)系的,你可以在視圖中盡情發(fā)揮,隨意編寫模板。ModPHP 使用自動生成模塊函數(shù)的方式,讓你隨意調(diào)取某個模塊的數(shù)據(jù)。實際上,在 ModPHP 模板中,函數(shù)是被建議使用的,因為它們功能強(qiáng)大,內(nèi)部封裝,不會造成變量濫用的問題。
ModPHP 包含的所有功能和特性,目的是使開發(fā)者更專注于界面的呈現(xiàn),而不是把時間花費(fèi)在思考如何部署和編寫程序邏輯。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: