最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Laravel Eloquent ORM 實(shí)現(xiàn)查詢表中指定的字段

 更新時(shí)間:2019年10月17日 09:08:37   作者:b5教程網(wǎng)  
今天小編就為大家分享一篇Laravel Eloquent ORM 實(shí)現(xiàn)查詢表中指定的字段,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

在使用Laravel ORM的Model方法find, get, first方法獲取數(shù)據(jù)對(duì)象時(shí)返回的數(shù)據(jù)對(duì)象的attributes屬性數(shù)組里會(huì)包含數(shù)據(jù)表中所有的字段對(duì)應(yīng)的鍵值關(guān)系, 那么如何在ORM查詢時(shí)只返回?cái)?shù)據(jù)表中指定字段的數(shù)據(jù)呢?很多時(shí)候,文檔上沒有寫明的用法需要我們?nèi)タ丛创a來探究的,下面我們就來看一下這三個(gè)方法的實(shí)現(xiàn)。

由于ORM依賴了QueryBuilder來實(shí)現(xiàn)查詢, 在QueryBuilder的源碼里通過查看get,first方法的實(shí)現(xiàn)可以到,他們都可以接收一個(gè)數(shù)組參數(shù)來指定要查詢的字段:

find方法的實(shí)現(xiàn)是在\Illuminate\Database\Eloquent\Builder類里,如下:

/** 
 * Find a model by its primary key. 
 *www.bcty365.com 
 * @param mixed $id 
 * @param array $columns 
 * @return \Illuminate\Database\Eloquent\Model|\Illuminate\Database\Eloquent\Collection|null 
 */ 
public function find($id, $columns = ['*']) 
{ 
 if (is_array($id)) { 
  return $this->findMany($id, $columns); 
 } 
 
 $this->query->where($this->model->getQualifiedKeyName(), '=', $id); 
 
 return $this->first($columns); 
} 

由于Eloquent Query Builder是依賴查詢構(gòu)建器\Illuminate\Database\Query\Builder的,first和get方法的源碼在Query Builder里如下:

/** 
 * Execute the query and get the first result. 
 * 
 * @param array $columns 
 * @return mixed|static 
 */ 
public function first($columns = ['*']) 
{ 
 $results = $this->take(1)->get($columns); 
 
 return count($results) > 0 ? reset($results) : null; 
} 
 
/** 
 * Execute the query as a "select" statement. 
 * 
 * @param array $columns 
 * @return array|static[] 
 */ 
public function get($columns = ['*']) 
{ 
 if (is_null($this->columns)) { 
  $this->columns = $columns; 
 } 
 
 return $this->processor->processSelect($this, $this->runSelect()); 
} 

所以使用Laravel的ORM方法查詢返回指定的字段可通過如下三種方法來實(shí)現(xiàn)

$data = ModelA::find($id, ['column1', 'column2']); 
 
$data = ModelA::first(['column1', 'column2']); 
 
$data = ModelA::where(['column1', '=', 'value'])->get(['column1', 'column2']); 

在不同的場(chǎng)景下三者中選符合需要的使用即可。

以上這篇Laravel Eloquent ORM 實(shí)現(xiàn)查詢表中指定的字段就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談PHP array_search 和 in_array 函數(shù)效率問題

    淺談PHP array_search 和 in_array 函數(shù)效率問題

    這篇文章主要介紹了淺談PHP array_search 和 in_array 函數(shù)效率問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 基于PHP生成簡(jiǎn)單的驗(yàn)證碼

    基于PHP生成簡(jiǎn)單的驗(yàn)證碼

    這篇文章主要介紹了基于PHP生成簡(jiǎn)單的驗(yàn)證碼的相關(guān)資料,需要的朋友可以參考下
    2016-06-06
  • thinkPHP中驗(yàn)證碼的簡(jiǎn)單使用方法

    thinkPHP中驗(yàn)證碼的簡(jiǎn)單使用方法

    這篇文章主要介紹了thinkPHP中驗(yàn)證碼的簡(jiǎn)單使用方法,涉及thinkPHP驗(yàn)證碼邏輯功能的實(shí)現(xiàn)與界面顯示的相關(guān)技巧,需要的朋友可以參考下
    2015-12-12
  • Thinkphp將二維數(shù)組變?yōu)闃?biāo)簽適用的一維數(shù)組方法總結(jié)

    Thinkphp將二維數(shù)組變?yōu)闃?biāo)簽適用的一維數(shù)組方法總結(jié)

    這篇文章主要介紹了Thinkphp將二維數(shù)組變?yōu)闃?biāo)簽適用的一維數(shù)組方法,總結(jié)了常見的轉(zhuǎn)化數(shù)組方法,非常實(shí)用,需要的朋友可以參考下
    2014-10-10
  • CodeIgniter輸出中文亂碼的兩種解決辦法

    CodeIgniter輸出中文亂碼的兩種解決辦法

    在controller直接echo的時(shí)候,某些瀏覽器會(huì)出現(xiàn)亂碼的情況。這篇文章主要介紹了CodeIgniter輸出中文亂碼的兩種解決辦法,需要的朋友可以參考下
    2014-06-06
  • Smarty模板配置實(shí)例簡(jiǎn)析

    Smarty模板配置實(shí)例簡(jiǎn)析

    這篇文章主要介紹了Smarty模板配置,結(jié)合實(shí)例形式簡(jiǎn)單分析了Smarty模板的功能、基本配置方法與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-07-07
  • PHP實(shí)現(xiàn)中文轉(zhuǎn)拼音的方法

    PHP實(shí)現(xiàn)中文轉(zhuǎn)拼音的方法

    這篇文章運(yùn)用簡(jiǎn)單易懂的例子給大家介紹PHP將中文轉(zhuǎn)換成拼音的方法,代碼非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助
    2023-11-11
  • Smarty模板引擎緩存機(jī)制詳解

    Smarty模板引擎緩存機(jī)制詳解

    這篇文章主要介紹了Smarty模板引擎緩存機(jī)制,結(jié)合實(shí)例形式分析了Smarty模板引擎緩存機(jī)制的原理,開啟與使用方法以及相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2016-05-05
  • 詳解將數(shù)據(jù)從Laravel傳送到vue的四種方式

    詳解將數(shù)據(jù)從Laravel傳送到vue的四種方式

    這篇文章主要介紹了詳解將數(shù)據(jù)從Laravel傳送到vue的四種方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • PHP隨機(jī)生成18位不重復(fù)的訂單號(hào)代碼實(shí)例

    PHP隨機(jī)生成18位不重復(fù)的訂單號(hào)代碼實(shí)例

    這篇文章主要介紹了PHP隨機(jī)生成18位不重復(fù)的訂單號(hào)代碼實(shí)例,代碼很簡(jiǎn)單但是很實(shí)用,有需要的同學(xué)可以參考下
    2021-03-03

最新評(píng)論

阳江市| 东乌珠穆沁旗| 开鲁县| 临沧市| 邢台市| 麦盖提县| 鸡泽县| 阜宁县| 大余县| 凤凰县| 青龙| 潜山县| 泊头市| 景谷| 通渭县| 突泉县| 夏河县| 酉阳| 时尚| 盘山县| 丹凤县| 凌源市| 平塘县| 章丘市| 湟中县| 五指山市| 饶平县| 肥城市| 南京市| 五常市| 宁陕县| 灵丘县| 措美县| 商丘市| 治县。| 松溪县| 称多县| 合川市| 呼玛县| 华蓥市| 吉木萨尔县|