Performance: Mailable classes
MEDIUM IMPACT
This affects server-side email generation and delivery speed, impacting backend response time and perceived user experience.
use Illuminate\Mail\Mailable; class WelcomeMail extends Mailable { public function build() { return $this->subject('Welcome') ->view('emails.welcome'); } } Mail::to('user@example.com')->queue(new WelcomeMail());
Mail::html('<h1>Welcome!</h1>', function ($message) { $message->to('user@example.com') ->subject('Welcome'); });
| Pattern | Server Blocking | Template Reuse | Queue Support | Verdict |
|---|---|---|---|---|
| Inline Mail::send() | Blocks request | No reuse | No | [X] Bad |
| Mailable class with immediate send | Blocks request | Yes | No | [!] OK |
| Mailable class with queue() | Non-blocking | Yes | Yes | [OK] Good |