您的位置:首页 > 编程语言 > PHP开发

使用Pear和php socket来实现通过smtp验证发送邮件

2005-01-07 13:33 1371 查看
 

前一断时间我打算做一个 —— 用户注册完后把注册信息发送到用户的邮箱的东西,
放到我在mvbb租的空间里。当然我打算php实现。然而php自身只带了个mail()用来
发送邮件。不过用mail()的前提是要有一个邮件系统(Qmail阿之类的)。但在我租的
一般空间上,是不可能有的。能不能使用我在www.126.com注册的帐号,然后用126的
smtp发送呢?单纯用mail()肯定是不行的了,因为mail()不提供验证的接口。

好了,下面该说怎么做了。(少废话,快给源代码!! >_<!!)
知道了,源代码如下:

<?php
require_once 'Mail.php';

$conf['mail'] = array(
'host' => 'smtp.126.com', //smtp服务器地址
'auth' => true, //true表示smtp服务器需要验证,false不需要
'username' => 'liangbowen', //用户名
'password' => '******' //密码
);

//发送邮件
$headers['From'] = 'liangbowen@126.com'; //发信地址
$headers['To'] = 'liangbowen@hotmail.com'; //收信地址
$headers['Subject'] = 'test mail send by php bowen.mvbb.com'; //邮件标题
$mail_object = &Mail::factory('smtp', $conf['mail']);
//邮件正文
$body = "这是一封自己发给自己的邮件。";

$mail_res = $mail_object->send($headers['To'], $headers, $body); //发送

if(PEAR::isError($mail_res)){ //检测错误
die($mail_res->getMessage());
}
else{
echo "send successful!";
}

?>

如你所见,要用到PEAR的socket和smtp类,可以上PEAR去下载。当然你也可以自己写smtp和socket的类。

付源码:http://www.liangbowen.com/downloads/mail.zip

因为是供学习参考,里面只是个很简单的例子,文件也有些乱。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  socket php 服务器 object