Sample code for 30+ languages & platforms
PHP

Send an Email via SMTP

See more SMTP Examples

Demonstrates the Chilkat MailMan.SendEmail method, which sends a single Email object through the configured SMTP server. This example configures the SMTP connection, builds a message, and sends it.

Background: SMTP (Simple Mail Transfer Protocol) is the protocol for sending mail. The typical flow is: connect to the server, authenticate, then hand over the message with MAIL FROM, RCPT TO, and DATA. SendEmail wraps all of that: you build an Email with subject, recipients, and body, and Chilkat renders it to MIME and delivers it. Modern submission commonly uses implicit TLS on port 465 (SmtpSsl = true).

Chilkat PHP Downloads

Chilkat2 PHP
<?php

use Chilkat2\Email;
use Chilkat2\MailMan;

// Demonstrates the MailMan.SendEmail method, which sends a single Email object through the
// configured SMTP server.

$mailman = new MailMan();

// Configure the SMTP server connection.
$mailman->SmtpHost = 'smtp.example.com';
$mailman->SmtpPort = 465;
$mailman->SmtpSsl = true;
$mailman->SmtpUsername = 'user@example.com';
$mailman->SmtpPassword = 'myPassword';

// Build the email to send.
$email = new Email();
$email->Subject = 'Test email from Chilkat';
$email->From = 'alice@example.com';
$email->AddTo('Bob', 'bob@example.com');
$email->Body = 'Hello, this is a test message.';

// Send the email.

try {
    $mailman->SendEmail($email);
} catch (\Chilkat2\Exception $e) {
    echo $e->getMessage(), "\n";
    exit;
}

echo "Email sent.\n";

// Note: Explicitly connecting/authenticating is optional.  Chilkat MailMan automatically
// connects and authenticates -- using the property settings above -- whenever a server
// operation requires it.  Calling the explicit connect/authenticate methods can still be
// helpful to determine whether a failure occurs while connecting or while authenticating.