Sample code for 30+ languages & platforms
Perl

Send Email with Multiple Reply-To Addresses

See more SMTP Examples

Send email with multiple repy-to addresses.

Note: Some mail servers will remove the extra email addresses from the Reply-To header. Even if you provide multiple reply-to addresses, the email may arrive with only the 1st.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

$mailman = chilkat::CkMailMan->new();

$mailman->put_SmtpHost("smtp.my_mail_server.com");
$mailman->put_SmtpUsername("myUsername");
$mailman->put_SmtpPassword("myPassword");
$mailman->put_SmtpPort(465);
$mailman->put_SmtpSsl(1);

# Create a new email object
$email = chilkat::CkEmail->new();

$email->put_Subject("This is a test");
$email->put_Body("This is a test");
$email->put_From('Joe <joe@example.com>');
$success = $email->AddTo("Mary",'mary@example2.com');

# Specify a single reply-to address, which will get replace with a list of addresses..
$email->put_ReplyTo('placeholder@example.com');

# Get the email as MIME.
$sbMime = chilkat::CkStringBuilder->new();
$mailman->RenderToMimeSb($email,$sbMime);

# Update the Reply-To MIME header with a list of email addresses.
$replyToAddrs = 'joe@example.com, mike@example.com';
$sbMime->ReplaceAllBetween("Reply-To: ","\r\n",$replyToAddrs,0);

# Examine the MIME to be sent:
print $sbMime->getAsString() . "\r\n";

# Here's the MIME:

# MIME-Version: 1.0
# Date: Tue, 03 Sep 2024 08:18:12 -0500
# Message-ID: <D892B0E563A7A13B1F499530DE21529714EA479A@SLICE>
# Content-Type: text/plain; charset=us-ascii; format=flowed
# Content-Transfer-Encoding: 7bit
# X-Priority: 3 (Normal)
# Subject: This is a test
# From: Joe <joe@example.com>
# To: Mary <mary@example2.com>
# Reply-To: joe@example.com, mike@example.com
# 
# This is a test

# ---------
# Send the MIME...
$success = $mailman->SendMime('joe@example.com','mary@example2.com',$sbMime->getAsString());
if ($success == 0) {
    print $mailman->lastErrorText() . "\r\n";
    exit;
}

$success = $mailman->CloseSmtpConnection();
if ($success == 0) {
    print "Connection to SMTP server not closed cleanly." . "\r\n";
}

print "Mail Sent!" . "\r\n";