导入时如何发送电子邮件?

How to send a email when import?

我正在尝试在导入列表时向用户发送电子邮件。

但是没有用。我正在使用 Mailtrap。

这是我的代码,我认为问题出在哪里:

<?php

namespace App\Http\Controllers;

use App\Imports\CsvImport;
use App\Mail\SuccessMail;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Mail;
use Maatwebsite\Excel\Facades\Excel;
use function GuzzleHttp\Promise\all;


class CsvFile extends Controller
{
    function index()
    {
        return view('csv_file');
    }

    public function csv_import()
    {
        Excel::import(new CsvImport, request()->file('file'));
        return redirect('/home');

    }

    public function sendEmail()
    {
        $user = Auth::user();
        Mail::to($user->email)->send(new SuccessMail());
    }

}

您需要从 csv_import() 函数调用 sendEmail() 函数:

public function csv_import()
    {
        Excel::import(new CsvImport, request()->file('file'));
        $this->sendEmail(); // then sendEmail function will execute
        return redirect('/home');
    }