您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關如何在Thinkphp5中定義獲取器和修改器,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
Thinkphp5中定義獲取器和修改器
一 獲取器:獲取器的作用是在獲取數據的字段值后自動進行處理,其實就是將在數據庫中拿到的數據變成我們想要的到的另外一種形式,
然后獲取器就是從中進行轉換的工具
獲取器通常要定義在model中,那個表需要獲取器就定義在相應的表的model中
<?php namespace app\index\model; use think\Model; class User extends Model{ 設置獲取器 public function getSexAttr($value){ $sex=[ 0=>'女', 1=>'男' ]; return $sex[$value]; } 設置修改器 public function setSexAttr($value){ $sex=[ '男'=>1, '女'=>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='名字'; $user->sex='男'; $user->age=20; $res= $user->save();
看完上述內容,你們對如何在Thinkphp5中定義獲取器和修改器有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。