新聞中心
這篇文章主要介紹ThinkPHP5數(shù)據(jù)對象之查詢數(shù)據(jù)Getdata方法的使用示例,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
ThinkPHP5數(shù)據(jù)對象之查詢數(shù)據(jù)Getdata方法的使用
自Tp5框架上線以來,與之前的3.2版還是有了很大的改變。個(gè)人比較喜歡tp5的模型實(shí)例化這一塊,TP5取消了自動(dòng)實(shí)例化模型的M方法,轉(zhuǎn)而使用了新的實(shí)例化模型方法,越來越接近面向?qū)ο罅?。以前用tp3.2中的M方法查詢出來的都是數(shù)組,而現(xiàn)在的tp5模型操作的返回的都是對象。今天聊下tp5中的數(shù)據(jù)對象,什么是數(shù)據(jù)對象?數(shù)據(jù)對象不了解,模型對象應(yīng)該知道吧,就是模型類實(shí)例化后獲得的對象。
模型對象和數(shù)據(jù)對象理解
1. 模型對象:模型類實(shí)例化后獲得的對象;
2. 數(shù)據(jù)對象:獲取到了原始數(shù)據(jù)的模型對象;
原始數(shù)據(jù):存放在模型對象的$data屬性中($data是一個(gè)數(shù)組)
數(shù)據(jù)對象:說到底,還是一個(gè)模型對象,千萬不要認(rèn)為是一個(gè)全新的對象
DB操作返回是數(shù)組;模型直接操作返回是對象。
很多時(shí)候我們用模型查詢數(shù)據(jù)時(shí),返回的是當(dāng)前模型的對象實(shí)例,像get或者find方法返回的是當(dāng)前模型的對象實(shí)例,但是我們并不想要這個(gè)對象,而是想要這個(gè)對象里面的數(shù)據(jù)["data":protected]。下面一個(gè)簡單實(shí)例講解如何或者data數(shù)據(jù)。
先創(chuàng)建一個(gè)自定義模型類,繼承自Model類
因?yàn)镸odel類是抽象類,必須定義他的子類才可以使用
模型文件:/application/index/model/Staff.php
控制器文件: Index.php
data($data); //4.getData()方法獲取數(shù)據(jù)對象原始數(shù)據(jù)$data $result = $model -> getData(); //5.查看數(shù)據(jù)對象原始數(shù)據(jù):$data屬性(數(shù)組類型) dump($result); }}現(xiàn)在打開瀏覽器運(yùn)行Index控制器的index方法:
//以下就是數(shù)據(jù)對象的原始數(shù)據(jù)//其實(shí)就是將數(shù)據(jù)對象中$data屬性值輸出array(3) { ["id"] => int(1001) ["name"] => string(5) "Peter" ["age"] => int(26)}現(xiàn)在是輸出了全部的原始數(shù)據(jù),如果我們只需要其中一個(gè)元素,怎么做呢?
getData方法參數(shù)傳入鍵名字符串,可獲取指定的單個(gè)原始數(shù)據(jù)元素
我們僅修改上面控制器代碼第四步操作即可:
//4.getData()方法獲取數(shù)據(jù)對象原始數(shù)據(jù)$data['name']的值$result = $model -> getData('name');這樣即可獲取原始數(shù)據(jù)$data中的name鍵名對應(yīng)的值:
string(5) "Peter"4. 總結(jié):
這個(gè)方法很靈活,即可獲取完整的原始數(shù)據(jù),也可以獲取其中的一個(gè)數(shù)據(jù)。在開發(fā)也是最常用的方法,特別是在模板制作中用得很多,一定要熟練掌握。
以上是“ThinkPHP5數(shù)據(jù)對象之查詢數(shù)據(jù)Getdata方法的使用示例”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
分享標(biāo)題:ThinkPHP5數(shù)據(jù)對象之查詢數(shù)據(jù)Getdata方法的使用示例-創(chuàng)新互聯(lián)
文章分享:http://fisionsoft.com.cn/article/deiepo.html