thinkphp5 模型實(shí)例化獲得數(shù)據(jù)對(duì)象的教程
模型對(duì)象和數(shù)據(jù)對(duì)象理解
1. 模型對(duì)象:模型類實(shí)例化后獲得的對(duì)象;
2. 數(shù)據(jù)對(duì)象:獲取到了原始數(shù)據(jù)的模型對(duì)象;
原始數(shù)據(jù):存放在模型對(duì)象的$data屬性中($data是一個(gè)數(shù)組)
數(shù)據(jù)對(duì)象:說到底,還是一個(gè)模型對(duì)象,千萬不要認(rèn)為是一個(gè)全新的對(duì)象
DB操作返回是數(shù)組。
模型直接操作返回是對(duì)象。
//該對(duì)象共計(jì)有28個(gè)受保護(hù)屬性,必須在本類或子類中使用,外部不能直接使用 object(app\index\model\Staff)#5 (28) { //數(shù)據(jù)庫配置數(shù)組 ["connection":protected] => array(0) { } //數(shù)據(jù)庫查詢對(duì)象,負(fù)責(zé)最終完成對(duì)數(shù)據(jù)庫的操作 ["query":protected] => NULL //模型名稱 ,創(chuàng)建時(shí)自動(dòng)賦值 ["name":protected] => string(5) "Staff" //與模型綁定的數(shù)據(jù)表的完整名稱(包括前綴的表名,如:tp5_staff) ["table":protected] => NULL //用命名空間表示的、當(dāng)前的模型類名:Staff ["class":protected] => string(21) "app\index\model\Staff" //出錯(cuò)時(shí)顯示的信息 ["error":protected] => NULL //字段驗(yàn)證規(guī)則 ["validate":protected] => NULL //數(shù)據(jù)表主鍵 ["pk":protected] => NULL //數(shù)據(jù)表字段名列表(與數(shù)據(jù)表對(duì)應(yīng)) ["field":protected] => array(0) { } //只讀字段列表 ["readonly":protected] => array(0) { } //顯示字段列表 ["visible":protected] => array(0) { } //隱藏屬性字段列表 ["hidden":protected] => array(0) { } //追加屬性列表 ["append":protected] => array(0) { } //與數(shù)據(jù)表字段對(duì)應(yīng)的信息列表(極其重要) ["data":protected] => array(0) { } //字段修改信息列表 ["change":protected] => array(0) { } //自動(dòng)完成列表 ["auto":protected] => array(0) { } //新增自動(dòng)完成列表 ["insert":protected] => array(0) { } //更新自動(dòng)完成列表 ["update":protected] => array(0) { } // 是否需要自動(dòng)寫入時(shí)間戳 如果設(shè)置為字符串 則表示時(shí)間字段的類型 ["autoWriteTimestamp":protected] => bool(false) //設(shè)置表中:創(chuàng)建時(shí)間字段的名稱 ["createTime":protected] => string(11) "create_time" //設(shè)置表中:更新時(shí)間字段的名稱 ["updateTime":protected] => string(11) "update_time" //設(shè)置表中:時(shí)間字段的格式 ["dateFormat":protected] => string(11) "Y-m-d H:i:s" //數(shù)據(jù)表中各字段類型定義 ["type":protected] => array(0) { } //是否是:更新操作 ["isUpdate":protected] => bool(false) //更新條件 ["updateWhere":protected] => NULL //當(dāng)前執(zhí)行的關(guān)聯(lián)條件 ["relation":protected] => NULL //驗(yàn)證失敗是否拋出異常 ["failException":protected] => bool(false) //全局查詢范圍設(shè)置 ["useGlobalScope":protected] => bool(true) }
當(dāng)我們用select()進(jìn)行查詢得出的結(jié)果無法toarray的時(shí)候,下面的方法就用得上了。
對(duì)象類型轉(zhuǎn)換數(shù)組
打開 database.php 增加或修改參數(shù)
'resultset_type' => '\think\Collection',
即可連貫操作
model('user')->select()->toArray()
以上這篇thinkphp5 模型實(shí)例化獲得數(shù)據(jù)對(duì)象的教程就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Thinkphp5.0框架使用模型Model的獲取器、修改器、軟刪除數(shù)據(jù)操作示例
- Thinkphp5.0 框架使用模型Model添加、更新、刪除數(shù)據(jù)操作詳解
- Thinkphp5.0 框架Model模型簡(jiǎn)單用法分析
- ThinkPHP5&5.1框架關(guān)聯(lián)模型分頁操作示例
- Thinkphp5.0框架的Db操作實(shí)例分析【連接、增刪改查、鏈?zhǔn)讲僮鞯取?/a>
- ThinkPHP5.1框架數(shù)據(jù)庫鏈接和增刪改查操作示例
- tp5(thinkPHP5)框架數(shù)據(jù)庫Db增刪改查常見操作總結(jié)
- TP5框架model常見操作示例小結(jié)【增刪改查、聚合、時(shí)間戳、軟刪除等】
相關(guān)文章
thinkPHP框架實(shí)現(xiàn)的簡(jiǎn)單計(jì)算器示例
這篇文章主要介紹了thinkPHP框架實(shí)現(xiàn)的簡(jiǎn)單計(jì)算器,結(jié)合實(shí)例形式分析了基于thinkPHP框架的用戶登陸、數(shù)值計(jì)算、數(shù)據(jù)庫讀寫、歷史記錄保存等功能相關(guān)實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下2018-12-12weiphp微信公眾平臺(tái)授權(quán)設(shè)置
本文給大家分享的是一款開源的微信公眾平臺(tái)weiphp的授權(quán)設(shè)置教程,非常的實(shí)用,有使用weiphp平臺(tái)的小伙伴可以參考下。2016-01-01php中存儲(chǔ)用戶ID和密碼到mysql數(shù)據(jù)庫的方法
對(duì)用戶身份驗(yàn)證,最常用的方法就是將用戶id與密碼保存進(jìn)數(shù)據(jù)庫中了,然后再寫一些登錄檢測(cè)代碼,就可以使用了2013-02-02Thinkphp框架+Layui實(shí)現(xiàn)圖片/文件上傳功能分析
這篇文章主要介紹了Thinkphp框架+Layui實(shí)現(xiàn)圖片/文件上傳功能,結(jié)合實(shí)例形式詳細(xì)分析了Thinkphp+Layui實(shí)現(xiàn)圖片文件上傳的具體步驟、原理與相關(guān)操作技巧,需要的朋友可以參考下2020-02-02PHP設(shè)計(jì)模式之解釋器(Interpreter)模式入門與應(yīng)用詳解
這篇文章主要介紹了PHP設(shè)計(jì)模式之解釋器(Interpreter)模式,結(jié)合實(shí)例形式詳細(xì)分析了PHP解釋器模式的概念、原理、基本應(yīng)用與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-12-12php微信公眾號(hào)開發(fā)之答題連闖三關(guān)
這篇文章主要為大家詳細(xì)介紹了php微信公眾號(hào)開發(fā)之答題連闖三關(guān),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-10-10