怎么在php中利用curl smtp实现一个邮件发送功能

介绍

这篇文章给大家介绍怎么在php中利用curl smtp实现一个邮件发送功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

实现方法如下:

美元telnet邮箱smtp服务地址25
在邮箱服务IP地址……
连接到邮箱SMTP服务地址。
转义字符是& # 39;^ & # 39;。
交换邮箱服务器地址微软ESMTP邮件服务准备好坐,2 0800年6月2012 15:02:12 +
EHLO 127.0.0.1
交换邮箱服务器地址你好(邮箱服务IP地址]

流水线
dsn
-ENHANCEDSTATUSCODES
-X-ANONYMOUSTLS
AUTH NTLM登录
-X-EXPS GSSAPI NTLM
8 bitmime
-BINARYMIME
分块
-XEXCH50
XRDST
身份验证登录
VXNlcm5hbWU6
用户名(base64_encode)
UGFzc3dvcmQ6
密码(base64_encode)

2.7.0认证成功邮件:发件箱地址
2.1.0的发送方好
收件人:收件箱地址
2.1.5收件人好

开始邮件数据输入;结尾& lt; CRLF>灵活;CRLF>
要发送的内容(这里的相关的规范有很多)

2.6.0 & lt; 0 b476f30 - 3 - b96 4 e3d - 84 - d2 - 395 a96d34000@exchange邮箱服务器地址在排队的邮件交付
退出
2.0.0服务关闭传输通道
国外主机连接关闭。


php测试代码:

代码如下:& lt; ?php
头(“内容类型:text/html; charset=utf-8");
$ smtp=阵列(
“url"=比;“邮箱SMTP服务器地址”,
“port"=比;“邮箱SMTP服务器端口“,//一般为25
“username"=比;“用户名“,
“password"=比;“密码“,
“from"=比;“发件地址”,
“to"=比;“收件地址”,
“subject"=比;“测试一下标题“,
“body"=比;“测试一下内容,
);
$ CRLF=癨 r \ n";
$测试=啊?
$旋度=curl_init ();
curl_setopt ($ curl CURLOPT_URL smtp美元[& # 39;url # 39;]);
curl_setopt ($ curl CURLOPT_PORT smtp美元[& # 39;港口# 39;]);
curl_setopt(美元curl CURLOPT_TIMEOUT 10);
函数inlineCode (str) {
$ str=修剪(str);
返回$ str ? & # 39;=? utf - 8 ? B ? & # 39; .base64_encode (str) # 39;公司吗?=& # 39;:& # 39;& # 39;;
}
函数buildHeader(头美元){
$ ret=& # 39; & # 39;;
foreach(头k=祝辞美元美元v) {
$后悔。=$ k # 39;公司:& # 39;。v !”美元\ n";
}
返回ret美元;
}
//
$头=阵列(
& # 39;网络# 39;=祝辞& # 39;& lt; & # 39;。美元smtp(& # 39;从# 39;]强生# 39;祝辞& # 39;,
& # 39;日期# 39;=祝辞日期(& # 39;" # 39;),
& # 39;从# 39;=比;& # 39;& lt; & # 39;。美元smtp(& # 39;从# 39;]强生# 39;& # 39;,
& # 39; MIME-Version& # 39;=祝辞& # 39;1.0 & # 39;
& # 39;主题# 39;=祝辞inlineCode (smtp美元[& # 39;主题# 39;]),
& # 39;伍仟# 39;=祝辞smtp美元[& # 39;使# 39;],
& # 39;内容类型# 39;=祝辞& # 39;text/html;charset=utf - 8;格式=流动# 39;
& # 39; Content-Transfer-Encoding& # 39;=祝辞& # 39;base64 # 39;
);
data=https://www.yisu.com/zixun/buildHeader(头)美元。美元CRLF.chunk_split (base64_encode (smtp(身体的)美元));
$内容=癊HLO“。smtp (“url")。美元CRLF;//先得你好一下
$内容。=癆UTH LOGIN"。美元CRLF.base64_encode (smtp (“username")美元)。美元CRLF.base64_encode (smtp (“password")美元)。CRLF美元;//验证登陆
$内容。=坝始?“。smtp (“from")。美元CRLF;//发件地址
$内容。=笆占?“。smtp (“to")。美元CRLF;//收件地址
$内容。=癉ATA"美元CRLF。数据。CRLF美元霸主地位;干净。CRLF美元;//发送内容
$内容。=癚UIT" CRLF美元;//退出
curl_setopt ($ curl CURLOPT_RETURNTRANSFER真的);//卷发接收返回数据
curl_setopt(美元$ curl CURLOPT_CUSTOMREQUEST内容);
测试=curl_exec美元($旋度);
var_dump($测试);
回声“& lt; br/祝辞\ r \ n";
var_dump($内容);
//结束
curl_close($旋度);


关于怎么在php中利用curl smtp实现一个邮件发送功能就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

怎么在php中利用curl smtp实现一个邮件发送功能