uga/php4mailer-bundle
A Symfony bundle that integrates the php4mailer library into Symfony applications, providing service container configuration for sending email. Note: this package has limited documentation and community adoption, so evaluate it carefully before use.
This is a Symfony bundle wrapping PHPMailer, not a Laravel package — there is no service provider, no config/php4mailer.php, and no facade. Before reaching for it, confirm you actually need it: Laravel's Mail facade (Symfony Mailer under the hood since Laravel 9) covers virtually every case this bundle handles.
If you still want to proceed:
composer require uga/php4mailer-bundle — expect dependency friction; it was last released in Feb 2017 and targets PHP 5.6/7.0-era Symfony.Resources/config/ and any *Extension.php — that is where the service definitions and default config live. That config shape is what you'd translate into a Laravel config file if you decide to wrap it.PhpMailerServiceProvider that binds an instance of the bundle's mailer class into the container, OR (simpler) just use phpmailer/phpmailer directly and skip the bundle entirely.For a Laravel project, the pragmatic first step is usually the last one — install PHPMailer, wire your own small service, and treat this bundle only as reference code.
Because the bundle targets Symfony's DI container, you'll be re-hosting its core (usually a thin wrapper around PHPMailer) yourself:
AppServiceProvider, injecting SMTP credentials from config/mail.php or a dedicated config/php4mailer.php you create.PhpMailer facade for ergonomic calls: PhpMailer::to(...)->subject(...)->send().SendPhpMailerJob so retries and timeouts are handled by the queue, not the user's request.PhpMailer message) holding recipients, subject, HTML/plain bodies; have the job translate that into the PHPMailer instance. This keeps templates testable.mailer.host, mailer.port, mailer.username, mailer.encryption) 1:1 into your Laravel config keys so migration between the two is mechanical.php artisan vendor:publish, you'll find nothing.symfony/dependency-injection and friends. If version-constrained, Composer may downgrade framework packages — inspect composer why before merging.SMTPDebug = 2 (or 3) and pipe to a logger; PHPMailer's raw output is noisy but the only way to diagnose SSL/auth failures. SMTPAuth = true plus SMTPSecure = 'tls' on port 587 is the modern baseline.phpmailer/phpmailer directly.phpmailer/phpmailer (actively maintained) or, better, stay on Laravel's built-in mailer unless you specifically need PHPMailer features (raw SMTP control, legacy attachment quirks, Microsoft Exchange behaviors).How can I help you explore Laravel packages today?