Perl utf8解码和编码
我在这里遇到了一种情况,试图使用Mail::Sendmail from Perl(西里尔文)发送和发送电子邮件 问题是我在邮件中收到无法识别的符号 我已经试过使用utf8,而不是utf8,我试过解码和编码,解码utf8等等(读了很多书,包括Perlmonks的讨论),但我仍然收到邮件主题中的两种无法识别的符号或“子例程条目中的宽字符” 增加:Perl utf8解码和编码,perl,decode,encode,Perl,Decode,Encode,我在这里遇到了一种情况,试图使用Mail::Sendmail from Perl(西里尔文)发送和发送电子邮件 问题是我在邮件中收到无法识别的符号 我已经试过使用utf8,而不是utf8,我试过解码和编码,解码utf8等等(读了很多书,包括Perlmonks的讨论),但我仍然收到邮件主题中的两种无法识别的符号或“子例程条目中的宽字符” 增加: #!/usr/bin/perl use Mail::Sendmail; use Encode; use utf8; use warnings; my
#!/usr/bin/perl
use Mail::Sendmail;
use Encode;
use utf8;
use warnings;
my $subject= "cyrillic subject";
my $message= "cyrillic message";
my %mail = (
To => 'recipient@example.com',
Subject => "$subject",
From => 'from@example.com',
Message => "$message",
);
sendmail(%mail) or die $Mail::Sendmail::error;
print "OK. Log says:\n", $Mail::Sendmail::log;
问题在不使用utf8和不使用编码的情况下解决
我添加了'contenttype'=>'text/html;charset=“utf-8”标题,一切都会好起来 您是否可以发布错误日志和电子邮件中出现的文本以及任何警告
use warning代码>通过命令行运行时提供。请提供实际演示问题的代码!对于使用utf8代码>:如果源文件使用UTF-8编码,请使用使用utf8代码>。如果源文件使用US-ASCII编码,则不要使用使用utf8代码>。如果我使用utf8,我将在/usr/local/share/perl5/Mail/Sendmail.pm第237行收到“子例程条目中的宽字符”。如果不使用utf8,则消息将被发送,我得到了这个“字符”。我也试着用encode对它进行编码。
#!/usr/bin/perl
use Mail::Sendmail;
use Encode;
use utf8;
use warnings;
my $subject= "cyrillic subject";
my $message= "cyrillic message";
my %mail = (
To => 'recipient@example.com',
Subject => "$subject",
From => 'from@example.com',
Message => "$message",
);
sendmail(%mail) or die $Mail::Sendmail::error;
print "OK. Log says:\n", $Mail::Sendmail::log;