phpmodel
Ⅰ php MVC框架中modeL的作用
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文件
在Model文件夾下創建啊 XxxModel.class.php
Ⅲ thinkPhP model的使用總是報錯
雖然不熟悉thinkphp,建議你試一試用用方法來實例化model類,好像是D方法來實例化吧,直接new一個model
方法的話,還沒include,所以出錯;所有框架基本一個道理,要用的時候才include,比較節約資源,所以用下D('Admin')來實例化
Ⅳ thinkphp model 必須對應資料庫表名
這個是不用必須的,可以任意命名。只是在tp裡面 如果你的model命名是用數據表名字命名的話,操作的時候直接相當操作這個表。自己命名的model,自己需要指定下自己操作的表名就OK啦,不是必須的 。多看看官方手冊,還是挺不錯的
Ⅳ php ci框架中如何定義model
手冊里應該很詳情了把
在application下models下建立一個文件
在ci2里文件名應為類名的首字母小寫形式例如類為User則文件名應該是user.php
ci3里要求是大寫User=>User.php
下面是一個最簡單的model
classUser_modelextendsCI_Model{
publicfunction__construct(){
parent::__construct();
}
}
文件名ci2user_model.php
ci3User_model.php
Ⅵ thinkphp5中的model模型層,有什麼用
Thinkphp模型類的主要作用是:完成業務邏輯處理,包括對數據表的增刪改查(CUED)操作。對處理的數據進行封裝;對欄位及屬性進行驗證;完成對象及屬性的過濾等功能。Thinkphp模型類的命名規則:使用駝峰法命名,並且首字母大寫,然後加上模型層的名稱