设为首页收藏本站

嘻皮客娱乐学习网

 找回密码
 中文注册
搜索
打印 上一主题 下一主题
开启左侧

[电脑编程] php利用pear:Net_SMTP类发送邮件的方法

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-29 15:27:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
php利用pear:Net_SMTP类发送邮件的方法

                                                                                               
                    最近写了几篇使用PHP内置的mail()函数、SMTP邮件类发送邮件的方法以及php发送邮件的几种方法,这篇文章来说一下php利用pear:Net_SMTP类发送邮件的方法
在使用以下源代码前,请配置好pear的路径,并在http://pear.php.net下载net_smtp包

在php.ini文件中根据你的操作系统选择不同的设置方法

; UNIX: "/path1:/path2"
include_path = ".:./php/pear"
;
; Windows: "\path1;\path2"
;include_path = ".;c:\php\pear"


<?php
require 'Net/SMTP.php';

$host = '126.com';//smtp服务器的ip或域名
$username= 'arcow';//登陆smtp服务器的用户名
$password= 'secret';//登陆smtp服务器的密码
$from = 'arcow@126.com'; //谁发的邮件
$rcpt = array('test@test.com', 'arcow@126.com');//可设多个接收者
$subj = "Subject: 你是谁\n";//主题
$body = "test it";//邮件内容

/* 建立一个类 */
if (! ($smtp = new Net_SMTP($host))) {
die("无法初始化类Net_SMTP!\n");
}

/* 开始连接SMTP服务器*/
if (PEAR::isError($e = $smtp->connect())) {
die($e->getMessage() . "\n");
}

/* smtp需要身份验证 */
$smtp->auth($username,$password,"PLAIN");

/*设置发送者邮箱 */
if (PEAR::isError($smtp->mailFrom($from))) {
die("无法设置发送者邮箱为 <$from>\n");
}

/* 设置接收邮件者 */
foreach ($rcpt as $to) {
if (PEAR::isError($res = $smtp->rcptTo($to))) {
die("邮件无法投递到 <$to>: " . $res->getMessage() . "\n");
}
}

/* 开始发送邮件内容 */
if (PEAR::isError($smtp->data($subj . "\r\n" . $body))) {
die("Unable to send data\n");
}

/* 断开连接 */
$smtp->disconnect();
echo "发送成功!";
?>
回复

使用道具 举报

小黑屋|手机版|嘻皮客网 ( 京ICP备10218169号|京公网安备11010802013797  

GMT+8, 2024-5-21 13:05 , Processed in 0.181252 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表