Laravel - 如何通过转换现有列值来更新查询

Nur*_*uza 2 php laravel eloquent

我有一个用户表,其中包含phone_number列。我想通过保留现有值的最后 9 个字符来更新表。

这是我正在使用的查询,它对我不起作用。

$user = User::where('usertype','=',1)->get(); $user->update(['phone_number' => substr($user['phone_number'],-9)]);

我收到错误“未定义的数组键“phone_number”

N69*_*69S 5

您可以在数据库上执行此操作,而无需获取数据。

$numberOfAffectedRows = User::where('usertype','=',1)->update(['phone_number' => \DB::raw("SUBSTRING('phone_number',-9)")]);
Run Code Online (Sandbox Code Playgroud)