I believe there is a built in Laravel modifier you can use. The exists rule.
$validator = Validator::make($request->all(), [
'username' => [
'required',
'string',
'email',
'max:255',
'exists:users,email' // check that the value exists in the 'email' field of the 'users' table
], 'email',
'password' => 'required|string|min:6',
]);
And also, I don't really know the benefit of using Validator::make() but I just validate the request object itself. Like this:
// You can also do this on a $request (\Illuminate\Http\Request) object
request()->validate([
'username' => 'required|email|max:255|exists:users,email',
'password' => 'required|string|min:6'
]);