溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

thinkphp模型如何定義

發(fā)布時(shí)間:2021-01-16 10:53:53 來(lái)源:億速云 閱讀:219 作者:小新 欄目:編程語(yǔ)言

這篇文章給大家分享的是有關(guān)thinkphp模型如何定義的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

模型定義

一.定義模型

1. 定義一個(gè)與數(shù)據(jù)庫(kù)相匹配的模型

class User extends Model{
}

2. 模型會(huì)自動(dòng)對(duì)應(yīng)數(shù)據(jù)表,模型類(lèi)的命名規(guī)則是除去表前綴(例如:tp_)的數(shù)據(jù)表名稱(chēng),采用駝峰法命名,并且首字母大寫(xiě),例如:

tp_user(表名)        =>         User(模型名)

tp_user_type(表名)    =>        UserType(模型名)

3. 如果擔(dān)心模型的名稱(chēng)和PHP關(guān)鍵字沖突,可以啟用類(lèi)后綴功能,只需要在應(yīng)用配置文件app.php中設(shè)置:

    // 開(kāi)啟應(yīng)用類(lèi)庫(kù)后綴
    'class_suffix'           => true,

4. 設(shè)置完畢后,所有的控制器名與類(lèi)名都要加上Controller與Model,例如:

Class UserModel

Class UserController

二.模型設(shè)置

1. 默認(rèn)主鍵是id,如果想設(shè)置其他主鍵,類(lèi)似于uid:

protected $pk = 'uid';

2. 在控制器調(diào)用模型的時(shí)候,如果控制器類(lèi)名與模型名重復(fù),可以設(shè)置別名:

use app\test\model\User as UserModel;

3. 在模型定義中也可以在模型中設(shè)置其他表名:

protected $table = 'tp_other';

4. 模型同控制器一樣也支持初始化,這里必須設(shè)置static靜態(tài)方法,具體如下:

    protected static function init()
    {
        //初始化內(nèi)容
     }

三.模型操作

1.模型操作與數(shù)據(jù)庫(kù)操作一致,但是模型操作不需要指定表名,例如:

數(shù)據(jù)庫(kù)操作:

Db::name('user')->all ();

模型操作:

User:all();

2.  模型操作與數(shù)據(jù)庫(kù)操作返回的結(jié)果類(lèi)型不同,數(shù)據(jù)庫(kù)操作返回的結(jié)果是一個(gè)(二維)數(shù)組[ [ ] ],而模型操作返回的結(jié)果是一個(gè)結(jié)果集[ { } ]。

感謝各位的閱讀!關(guān)于“thinkphp模型如何定義”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI