Mail::Send(3) Simple electronic mail interface


require Mail::Send;
$msg = Mail::Send->new;
$msg = Mail::Send->new(Subject => 'example', To => 'timbo');
$msg->to('[email protected]');
$msg->to('[email protected]', '[email protected]');
$msg->subject('example subject');
$msg->cc('[email protected]');
$msg->bcc('[email protected]');
$msg->set($header, @values);
$msg->add($header, @values);
# Launch mailer and set headers. The filehandle returned
# by open() is an instance of the Mail::Mailer class.
# Arguments to the open() method are passed to the Mail::Mailer
# constructor.
$fh = $msg->open; # some default mailer
$fh = $msg->open('sendmail'); # explicit
print $fh "Body of message";
$fh->close # complete the message and send it
or die "couldn't send whole message: $!\n";


Mail::Send creates e-mail messages without using the Mail::Header knowledge, which means that all escaping and folding must be done by you! Simplicity has its price.

When you have time, take a look at Mail::Transport



A list of header fields (provided as key-value PAIRS) can be used to initialize the object.

Header fields

Add values to the list of defined values for the FIELDNAME.
VALUES will replace the old values for the FIELDNAME. Returned is the LIST of values after modification.


The OPTIONS are used to initiate a mailer object via Mail::Mailer::new(). Then Mail::Mailer::open() is called with the knowledge collected in this Mail::Send object.


The MailTools bundle was developed by Graham Barr. Later, Mark Overmeer took over maintenance without commitment to further development.

Mail::Cap by Gisle Aas <[email protected]>. Mail::Field::AddrList by Peter Orbaek <[email protected]>. Mail::Mailer and Mail::Send by Tim Bunce <[email protected]>. For other contributors see ChangeLog.


Copyrights 1995-2000 Graham Barr <[email protected]> and 2001-2007 Mark Overmeer <[email protected]>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See