2017-01-13 26 views
3

對於此更新查詢,我試圖在運行它之後獲取id。Laravel從更新查詢獲取記錄ID

$results = DB::table('testDB123.users') 
    ->where('fbID', '=', $x['id']) 
    ->update([ 
      'updated_at' => $x['currDate'], 
      'fbFirstName' => $x['firstName'], 
      'fbLastName' => $x['lastName'] 
     ] 
    ); 

沒有運氣$results->id

有什麼類似insertGetId用於更新查詢試過這種?

$id = DB::table($table1)->insertGetId([...]) 

回答

3

update()方法不返回一個對象,所以你有兩個選擇:

選項1

使用updateOrCreate()

$user = User::updateOrCreate(['fbID' => $x['id']], $dataArray); 
$id = $user->id; 

選項2

獲取對象並進行更新:

$user = User::where('fbID', '=', $x['id'])->first(); 
$user->update($dataArray); 

$id = $user->id;