首頁  >  文章  >  php框架  >  詳解Tp5中如何定義獲取器和修改器

詳解Tp5中如何定義獲取器和修改器

藏色散人
藏色散人轉載
2021-09-02 17:27:082446瀏覽

thinkphp框架教學專欄將介紹詳解thinkphp5如何定義獲取器和修改器 ,希望對需要的朋友有幫助!

詳解Tp5中如何定義獲取器和修改器

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

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

##取得器通常要定義在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();

以上是詳解Tp5中如何定義獲取器和修改器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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