首頁  >  文章  >  php框架  >  Thinkphp5中怎麼定義取得器與修改器

Thinkphp5中怎麼定義取得器與修改器

藏色散人
藏色散人轉載
2021-05-10 15:25:131863瀏覽

下面由thinkphp教學欄位來介紹Thinkphp5怎麼定義獲取器和修改器,希望對需要的朋友有幫助!

Thinkphp5中定義取得器與修改器

一取得器:取得器的作用是在取得資料的欄位值後自動處理,其實就是會在資料庫中拿到的資料變成我們想要的到的另外一種形式,

然後獲取器就是從中進行轉換的工具

獲取器通常要定義在model中,那個表需要取得器就定義在對應的表的model中

 

<?php
namespace app\index\model;

use think\Model;

class User extends Model{

    设置获取器
    public function getSexAttr($value){

        $sex=[
            0=>&#39;女&#39;,
            1=>&#39;男&#39;
        ];

        return $sex[$value];
    }
    设置修改器
    public function setSexAttr($value){
        $sex=[
            &#39;男&#39;=>1,
            &#39;女&#39;=>0
        ];

        return $sex[$value];

    }   
}

getSexAttr駝峰命名法是固定的定義格式,中間的Sex一般是我們資料庫中的欄位名稱,方法中定義的意思是,如果資料庫中sex欄位=0,那麼像回事為'女',

如果資料庫中sex欄位=1,那麼顯示的值為'男'

在controller中我們使用User模型進行資料庫查詢操作

$user = User::get(1);
echo $user->sex; // 例如输出“男”

setSexAttr駝峰命名法定義了修改器,同同樣的Sex為欄位名稱,在我們修改或插入新的資料時,資料會透過這個方法進行資料的轉換,

上邊的方法中,我們在向資料庫sex欄位插入欄位值='男'時,實際上資料庫中存的資料是'1'

        $user=new User();
         $user->name=&#39;名字&#39;;
        $user->sex=&#39;男&#39;;
        $user->age=20;
        $res= $user->save();

相關推薦:最新的10個thinkphp影片教學

以上是Thinkphp5中怎麼定義取得器與修改器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除