where(function ($query) { $query->whereNull('name')->orWhereColumn('name', '!=', 'username'); })->limit(100)->get(); foreach ($usersToUpdate as $user) { $user->name = $user->username; $user->save(); } // 更新用户首字母 $users = User::whereNull('letter') ->where(function ($query) { $query->whereNotNull('name')->orWhereNotNull('username'); })->limit(100)->get(); foreach ($users as $user) { $name = $user->username; if ($user->name) { $name = $user->name; } $user->letter = strtoupper(Pinyin::abbr(mb_substr($name, 0, 1))[0]); $user->save(); } return self::SUCCESS; } }