Send transactional email with LaminasMail using Message, MimePart, and SmtpOptions.
Sending Email with LaminasMail
use LaminasMailMessage;
use LaminasMailTransportSmtp;
use LaminasMailTransportSmtpOptions;
// Create message
$message = new Message();
$message->addTo("user@example.com", "User Name")
->addFrom("noreply@myapp.com", "My App")
->addCc("manager@myapp.com")
->setSubject("Welcome to MyApp!")
->setBody("Welcome to our platform!")
->setEncoding("UTF-8");
// HTML body
use LaminasMimeMessage as MimeMessage;
use LaminasMimePart as MimePart;
$html = new MimePart("<h1>Welcome!</h1>");
$html->type = "text/html";
$body = new MimeMessage();
$body->setParts([$html]);
$message->setBody($body);
// SMTP Transport
$options = new SmtpOptions(["host"=>"smtp.gmail.com","port"=>587,
"connection_class"=>"login","connection_config"=>["ssl"=>"tls","username"=>"u","password"=>"p"]]);
$transport = new Smtp($options);
$transport->send($message);