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

文章介绍了PHP使用NetMail组件发送邮件的方法。首先要下载NetMail等pear组件,在webapp目录下建inc/pear目录存放组件包,并修改文件中require_once的路径。接着给出发送程序示例,设置smtp访问用户名、密码等信息,选择smtp发送方式。

最近看到不少关于用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");
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值