Генерация безопасного email через Faker в Laravel
Метод email иногда выдаёт
адреса на реально существующих
доменах. Для сидеров безопаснее
safeEmail - домены вроде
example.com, example.org.
Письма случайно не уйдут живым людям.
Сравним в контроллере:
<?php
namespace App\Http\Controllers;
class UserController extends Controller
{
public function index()
{
dump(fake()->email());
dump(fake()->safeEmail());
}
}
?>
В сидере для пользователей
берём safeEmail:
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class DatabaseSeeder extends Seeder
{
public function run(): void
{
DB::table('users')->insert([
'name' => fake()->name(),
'email' => fake()->safeEmail(),
]);
}
}
?>
Выполним сид и проверим email в таблице:
php artisan db:seed
Сравните вывод email()
и safeEmail()
по несколько раз.
В сидере вставьте юзера
с safeEmail.