簡體   English   中英

如何在不使用 [0] 的情況下獲得結果

[英]How to get a result without using [0]

我正在運行這個查詢

$results = DB::connection('selection')
                                    ->select("
                                            SELECT id, name, email
                                            FROM users
                                            WHERE email = $this->email
                                   ");

我希望只得到結果,我確實得到了,這是我的 output

array:1 [
  0 => {
    +"id": 1
    +"name": "Ted Wood"
    +"email": "tedwood@email.com"
  }
]

我想知道的是如何訪問name而不必做$results[0]->name我想做$results->name

因為它只是我得到的 1 個項目,所以我認為不需要 foreach 循環

DB::select()返回一個數組。 first()方法適用於 collections,因此您需要將數組包裝在集合中才能使用first()方法。

$results = collect($results)->first()

$results =collect(DB::connection('selection')
                                    ->select("
                                            SELECT id, name, email
                                            FROM users
                                            WHERE email = $this->email
                                   "))->first();

但我認為最好的方法是:

  $results = DB::connection('selection')->table('users')->select('id', 'name', 'email')
        ->where('email',$this->email)->limit(1)->first();

像這樣使用重置指針

reset($results)->name

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM