導航:首頁 > 編程語言 > phpmodel類

phpmodel類

發布時間:2023-08-21 00:35:24

php的tq框架中,的model類,controller類,和view類都有什麼用代碼都應該寫在

MVC概念來自傳統的桌面軟體開發,在那樣的環境下,事件發生時,Model可以主動通知View,而這在HTTP協議里是不可能的(長連接comet除外啊)。長期以來,PHP業界對MVC框架中M和C的理解和運用都是不精細的(當然,夠用就好,能滿足絕大多數業務了)。這導致MC分層不清,PHPer在寫代碼的時候沒有明確的規則,到底業務邏輯放在C里還是M里,常見的問題有:
C層承擔職責過多,如,贊一個答案是給對應回答者加聲望,寫到C裡面去了
M層太單薄,就繼承一下框架的Model(或者DB類),實現資料庫的增刪查改
非資料庫操作(如調用微博OpenAPI)只好包裝到Util類
用戶輸入($_GET,$_POST)全局亂跑,M層和Util里都有
由於大部分場景下,PHP都用來做Web應用,而且是Database Driven Application,所以,各類Database Driven的快速開發框架也應運而生,比如說,CakePHP的Model類乾脆就定義了CURD幾個針對數據表的操作,Qcodo直接根據數據表結構自動生成MVC三層的腳手架代碼。
我理解的PHP應用是5層結構,M層應再拆分為Biz Model,DAO,Infrastructure,貼幾幅圖片

② thinkphp 模型類的作用

一般情況下是一個表對應一個model類,不用也是可以的。

至於你說的簡化代碼,給你舉個例子:

比如說你有一個user表,裡面有 id name pass time(登錄時間),對其的操作頁面有注冊,登錄,修改密碼等等

如果你要使用M來進行實例的話,不管是注冊還是幹啥,你每次都要對提交過來的信息是否合法進行一個驗證,time時間每次都要使用time()函數來重新生成以下

但是如果你使用了model,使用D來實例化,這些信息的驗證,和time()的完成都可以寫到model中,就不用在上面說的那些頁面當中一一進行操作驗證或者添加了。

classUserModelextendsModel
{
//使用下面的這些可以很方面對user表進行操作,省去了多次對表進行操作時候所書寫的驗證和完成之類的代碼。
//自動驗證
protected$_validate=array(
array('name','require','用戶名不能為空'),
array('name','','用戶名已存在',0,'unique',1),
array('user_pwd','require','新密碼不能是空',0,'',2),//只更新時驗證
);
//自動完成
protected$_auto=array(
array('addtime','time',1,'function'),
);
//上面的一些規則可以參考自動完成和自動驗證的規則,需要調用函數的時候,在下面自己再添加自定義的函數

}
閱讀全文

與phpmodel類相關的資料

熱點內容
臉部識別演算法模型廠家 瀏覽:176
反編譯的程序帶注釋嗎 瀏覽:713
安裝軟體伺服器未響應怎麼解決 瀏覽:531
閥門開度單片機 瀏覽:568
python多線程有什麼坑 瀏覽:681
程序員從互聯網跳槽到銀行里 瀏覽:244
百度網盤資源解壓後暫不支持在線 瀏覽:220
android自動化環境 瀏覽:253
androidrealm加密 瀏覽:513
地圖正在解壓縮是什麼意思 瀏覽:217
電腦軟體能放在文件夾嗎 瀏覽:786
uc伺服器怎麼打開 瀏覽:363
net怎麼編譯 瀏覽:244
我的世界187伺服器地址ip 瀏覽:955
拍賣房價的演算法 瀏覽:440
linux內核編譯視頻教程 瀏覽:884
程序員厚黑 瀏覽:211
如何在閑魚淘二手安卓機 瀏覽:178
怎麼下載晨星app 瀏覽:135
兩台伺服器如何同步內容 瀏覽:811