#!/usr/bin/perl -w use strict; use warnings; use MIME::Lite qw( ); my $addr = '...@....com'; sub message { my ($to_name, $to_addr, $fr_name, $fr_addr, $subject, $body) = @_; my $msg = MIME::Lite->new( From => qq{"$fr_name" <$fr_addr>}, To => qq{"$to_name" <$to_addr>}, Subject => $subject, Type => 'multipart/related', ); $msg->attach( Type => 'text/plain; charset=UTF-8', Data => $body, Encoding => 'quoted-printable', ); $msg->send; } message( # Control 'a', $addr, 'a', $addr, 'a', 'a', ); message( # Test "\x{2660}", $addr, "\x{2660}", $addr, "\x{2660}", "\x{2660}", ); #### sub message { my ($to_name, $to_addr, $fr_name, $fr_addr, $subject, $body) = @_; my $fr = qq{"$fr_name" <$fr_addr>}; my $to = qq{"$to_name" <$to_addr>}; utf8::encode( $_ ) for $to, $fr, $subject, $body; my $msg = MIME::Lite->new( From => $fr, To => $to, Subject => $subject, Type => 'multipart/related', ); $msg->attach( Type => 'text/plain; charset=UTF-8', Data => $body, Encoding => 'quoted-printable', ); $msg->send; } #### sub message { my ($to_name, $to_addr, $fr_name, $fr_addr, $subject, $body) = @_; $_ = encode('MIME-Header', $_) for $to_name, $fr_name, $subject; utf8::encode( $body ); my $msg = MIME::Lite->new( From => qq{"$fr_name" <$fr_addr>}, To => qq{"$to_name" <$to_addr>}, Subject => $subject, Type => 'multipart/related', ); $msg->attach( Type => 'text/plain; charset=UTF-8', Data => $body, Encoding => 'quoted-printable', ); $msg->send; }