在PHP中使用Pear 的NetMail发送smtp邮件

文章介绍了使用PHP官方组件库NetMail发送邮件的方法。需下载NetMail、SMTP等pear组件,在webapp目录下建inc/pear目录存放组件,修改文件中requirel_once路径。还给出了发送程序示例,设置smtp访问信息,选择发送方式等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近看到不少关于用smtp发邮件的文章,其实除了自己写以外,php的官方组件库还提供了一个netmail组件可以发送邮件。下面简单介绍使用的方法

1 下载NetMail,SMTP,SASL,SOCKET等几个pear组件,当然还包括pear.php这个模块。注意最新版本的文件里面最后面缺少 “?>“ 要自己补上。 

在你的webapp目录下建立一个inc/pear目录,一般不要使用系统的pear库,因为一可能会有版本问题,二pear使用时需要设置require的路径,而每一个程序可能都有差别。

把所有的包放在inc/pear里面后,修改每一个文件里面requirel_once的地方,在文件名前面加上你自己的路径,相对位置从你要执行发送程序的目录开始,大致如下

require_once(PEAR_PATH.'Mail.php');

里面的PEAR_PATH可以控制不同目录下的文件调用时根据自己的当前所在路径来具体设置

2 发送程序

设置smtp的访问用户名,密码

$params = array('host' => 'localhost',
                'port' => '25',
                'username' => 'danny@xxx.gov.cn',
                'password' => 'danny');

  //$to = $test_mail;
  $recipients = $to; 接收人,可以是一个数组来存放多个地址

  $headers['From']    = $email;
  $headers['To']      = $to;
  $headers['Subject'] = $subject;

  $body = $message;
  //选择smtp的发送方式,当然还支持mail()和sendmail
  $mail_object = &Mail::factory('smtp', $params);
  if (PEAR::isError($e = $mail_object->send($recipients, $headers, $body))) {
    die($e->getMessage() . "/n");
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值