• 21-Perl 发送邮件


    1.Perl 发送邮件
    如果你的程序在 Linux/Unix 系统上运行,你就可以在 Perl 中使用 sendmail 工具来发送邮件。
    以下是一个简单的脚本实例用于发送邮件:
    #!/usr/bin/perl
    #接收者邮箱
    $to = '123@qq.com';
    #发送者邮箱
    $from = 'test@qq.com';
    #标题
    $subject = 'Perl 发送邮件测试';
    $message = '这是一封使用 Perl 发送的邮件。';
    open(MAIL, "|/usr/sbin/sendmail -t");
    # 邮件头部
    print MAIL "To: $to ";
    print MAIL "From: $from ";
    print MAIL "Subject: $subject ";
    # 邮箱信息
    print MAIL $message;
    close(MAIL);
    print "邮件发送成功 ";

    1.1 发送 HTML 格式邮件
    我们可以在邮件头部添加 Content-type: text/html 来发送 HTML 格式的邮件,实例如下:
    #!/usr/bin/perl
    # 接收者邮箱
    $to = '123@qq.com';
    #发送者邮箱
    $from = 'test@runoob.com';
    #标题
    $subject = 'Perl 发送邮件测试';
    $message = '<h1>这是一封使用 Perl 发送的邮件<h1><p>你好。</p>';
    open(MAIL, "|/usr/sbin/sendmail -t");
    # 邮件头部
    print MAIL "To: $to ";
    print MAIL "From: $from ";
    print MAIL "Subject: $subject ";
    print MAIL "Content-type: text/html ";
    # 邮箱信息
    print MAIL $message;
    close(MAIL);
    print "邮件发送成功 ";

    2.使用 MIME::Lite 模块
    如果你使用的是 window 系统,没有 sendmail 工具。这时你就可以使用 perl 的 MIME:Lite 模块作为邮件客户端来发送邮件。
    MIME:Lite 模块 下载地址为:MIME-Lite-3.030.tar.gz。
    这里我们直接用 cpan 来安装(需要 root 权限),不用下载:
    $ cpan -i MIME::Lite
    ……
    /usr/bin/make install -- OK
    安装成功后,我们来演示一个实例:
    #!/usr/bin/perl
    use MIME::Lite;
    # 接收邮箱
    $to = '123@qq.com';
    # 抄送者,多个使用逗号隔开
    # $cc = 'test1@qq.com, test2@qq.com';
    #发送者邮箱
    $from = 'test@qq.com';
    #标题
    $subject = 'Perl 发送邮件测试';
    $message = '这是一封使用 Perl 发送的邮件,使用了 MIME::Lite 模块。';
    $msg = MIME::Lite->new(
    From => $from,
    To => $to,
    Cc => $cc,
    Subject => $subject,
    Data => $message
    );
    $msg->send;
    print "邮件发送成功 ";

    2.1 发送 HTML 格式邮件
    我们可以在邮件头部添加 Content-type: text/html 来发送 HTML 格式的邮件,实例如下

    2.2 发送带有附件的邮件
    发送带有附件的邮件实例如下:

    实例
    #!/usr/bin/perl
    use MIME::Lite;
    # 接收者邮箱
    $to = '123@qq.com';
    # 抄送者,多个使用逗号隔开
    # $cc = 'test1@qq.com, test2@qq.com';
    #发送者邮箱
    $from = 'test@qq.com';
    #标题
    $subject = 'Perl 发送邮件测试';
    $message = '这是一封使用 Perl 发送的邮件,使用了 MIME::Lite 模块,包含了附件。';
    $msg = MIME::Lite->new(
    From => $from,
    To => $to,
    Cc => $cc,
    Subject => $subject,
    Type => 'multipart/mixed' # 附件标记
    );
    $msg->attach (
    Type => 'TEXT',
    Data => $message
    );
    # 指定附件信息
    $msg->attach(Type => 'TEXT',
    Path => './runoob.txt', # 当前目录下
    Filename => 'runoob.txt',
    Disposition => 'attachment'
    );
    $msg->send;
    print "邮件发送成功 ";

    你可以通过使用多个 $msg->attach 来添加多个附件。

  • 相关阅读:
    谈谈MVC项目中的缓存功能设计的相关问题
    MVC 3.0 在各个版本IIS中的部署
    从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件
    从零开始学习jQuery (十) jQueryUI常用功能实战
    从零开始学习jQuery (九) jQuery工具函数
    从零开始学习jQuery (八) 插播:jQuery实施方案
    从零开始学习jQuery (七) jQuery动画-让页面动起来!
    从零开始学习jQuery (六) AJAX快餐
    从零开始学习jQuery (五) 事件与事件对象
    从零开始学习jQuery (四) 使用jQuery操作元素的属性与样式
  • 原文地址:https://www.cnblogs.com/BradMiller/p/11860687.html
Copyright © 2020-2023  润新知