php pear mail smtp 不验证,怎么在php中使用pear_smtp实现一个邮件发送功能
怎么在php中使用pear_smtp实现一个邮件发送功能
发布时间:2020-12-22 16:24:35
来源:亿速云
阅读:76
作者:Leah
怎么在php中使用pear_smtp实现一个邮件发送功能?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
PHP自带的mail函数比较蛋疼,在win下配置了sendmail还是无法发送邮件。而使用第三方的pear/mail可以直接通过smtp连接邮件发送服务器。如(smtp.163.com)。从而没有必要在本机上安装sendmail等类似软件。
确保PEAR Mail包已经安装。<?php
require_once "vendor/autoload.php";
$from = "test";
$to = "test ";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
$host = "smtp.163.com";
$port = "25";
$username = "test@163.com";
$password = "test123";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
// 'debug'=>true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
" . $mail->getMessage() . "
");
} else {
echo("
Message successfully sent!
");
}
?>
这是非加密方式。
PHPer 多数使用 mail 函数来发送邮件,但我们可以使用其他的 SMTP 服务器来发送,这里推荐使用 PEAR's mail package 来发送邮件。$subject = "This mail is sent from SMTP.";
$mail_body = "This is the body of the mail which is sent using SMTP.";
$from = "From: From Name ";
$to = "To: To Name ";
$receiver = "toaddress@xpertdeveloper.com";
// Setting up the headers
$headers["From"] = $from;
$headers["To"] = $to;
$headers["Subject"] = $subject;
$headers["Reply-To"] = "reply@address.com";
$headers["Content-Type"] = "text/plain; charset=ISO-2022-JP";
$headers["Return-path"] = "returnpath@address.com";
// Setting up the SMTP setting
$smtp_info["host"] = "smtp.server.com";
$smtp_info["port"] = "25";
$smtp_info["auth"] = true;
$smtp_info["username"] = "smtp_user";
$smtp_info["password"] = "smtp_password";
// Creating the PEAR mail object :
$mail_obj =& Mail::factory("smtp", $smtp_info);
// Sending the mail now
$mail_sent = $mail_obj->send($receiver, $headers, $mail_body);
// If any error the see for that here:
if (PEAR::isError($mail_sent)) { print($mail_sent->getMessage());}
第三个案例:
在使用以下源代码前,请配置好pear的路径,下载net_smtp包
在php.ini文件中根据你的操作系统选择不同的设置方法; UNIX: "/path2:/path3"
include_path = ".:./php/pear"
;
; Windows: "\path2;\path3"
;include_path = ".;c:\php\pear"
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("无法设置发送者邮箱为 \n");
}
/* 设置接收邮件者 */
foreach ($rcpt as $to) {
if (PEAR::isError($res = $smtp->rcptTo($to))) {
die("邮件无法投递到 : " . $res->getMessage() . "\n");
}
}
/* 开始发送邮件内容 */
if (PEAR::isError($smtp->data($subj . "\r\n" . $body))) {
die("Unable to send data\n");
}
/* 断开连接 */
$smtp->disconnect();
echo "发送成功!";
?>
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
php pear mail smtp 不验证,怎么在php中使用pear_smtp实现一个邮件发送功能相关推荐
- java mail 抄送多用户_javaMail邮件发送功能(多收件人,多抄送人,多密送人,多附件)...
先看源码,再来理解,可以直接使用! JavaMailWithAttachment.java: private MimeMessage message; private Session session; ...
- java邮件支持_使用Spring的JAVA Mail支持简化邮件发送功能
闲来无事,翻看<Spring in Action>,发现Spring集成了对JAVA Mail的支持,有点小激动的看了一遍,嗯,话说真的简单了很多. Spring的邮件发送的核心是Mail ...
- php邮件代码c语言,C语言实现邮件发送功能(SMTP)源码
[实例简介]C 语言编写的邮件发送器是SMTP协议的源代码和EXE执行程序均在里面使用VS2013开发环境生成,填写对应参数即可成功进行邮件发送,不用配置邮件服务器,只需一个支持SMTP协议的邮箱账号 ...
- 共享一个邮件发送的程序( share a Mail Sending program)
写的不怎么好,当时用来测试邮件系统而写的,基本上所有的邮箱,三种类型的邮件都可以发送,还凑合 http://files.cnblogs.com/blodfox777/MailSender.rar
- com.sun.mail.smtp.SMTPSendFailedException: 550 Invalid User
使用springboot集成的邮件发送功能,参考了文章:https://blog.csdn.net/gfd54gd5f46/article/details/77414560 无论是SimpleMail ...
- com.sun.mail.smtp.SMTPSendFailedException:554 5.2.0 STOREDRV.Submission.Exception
使用outlook发送邮件报异常:com.sun.mail.smtp.SMTPSendFailedException:554 5.2.0 STOREDRV.Submission.Exception 我 ...
- java发送邮件354_基于SMTP的JAVA邮件发送程序
这个程序没有使用JavaMail API,而是根据SMTP协议的要求直接处理协议的细节发送邮件,虽然比较麻烦了一些,但是对了解邮件协议的细节很有帮助的. 本文分两部分,第一部分是SMTP命令介绍(这个 ...
- Java Mail 邮件发送(一):入门Demo
本文首发于简书,Java Mail 邮件发送(一):Demo 上周公司的项目要求开发邮件发送功能.自己在网上跟着教程边学边做了一下午,现在基本开发完成了.由于一个同事也想看下该怎么写,顺便学习下.所以 ...
- Linux mail 邮件发送
Linux mail 邮件介绍 在Linux系统下我们可以通过"mail"命令,发送邮件,在运维中通常我们它来实现邮件告警. 安装 (方案1) 一.安装邮件服务 yum insta ...
最新文章
- 《Redis设计与实现》之第四章:字典
- 锁屏界面提示某些设置已隐藏_iOS 13隐藏手电筒和相机快捷图标
- C++引入抽象基类和纯虚函数的作用和目的
- 面向对象编程 - 练习题
- mysql batch 失败_mysql突然挂掉,重启失败,求助
- pandas DataFrame 索引(iloc 与 loc 的区别)
- 开票服务器管理系统默认密码,税控盘初始密码和口令是多少-百旺税控盘初始密码和口令-牛账网...
- php 固定表头,固定表头和首列的表格
- 论文阅读 (九):A survey on instance selection for active learning (2012)
- 【Twitter 舆论分析】Twitter 爬虫绕过API限制
- 【转】视频《经梧太极第一代传人闫芳老师收徒仪式上推手》是真实的吗?
- 利用Xposed框架修改微信运动计步
- gradle尚硅谷笔记
- [工具]Firefox(火狐浏览器)常用插件
- C1认证学习四(多媒体基础参数)
- 如何玩转kvm切换器
- Nvidia Jetson TX2 详细刷机教程及踩坑记录(Jetpack3.3,python2.7,torch1.2,torchvision0.2.2)
- Python字符串类型以及应用
- 使用Beaglebone Black的PRU(二)——Hello World!
- CIO访谈实录:2016里约奥运会CIO伊丽·雷森迪
热门文章
- 视频流的自适应传输机制-dash
- 中国地质大学的计算机专业咋样,中国地质大学武汉计算机专业好还是武汉理工大学的好...
- WINDOWS7-11磁盘分区教程
- Python3-笔记-B-002-数据结构-字典dict{ }
- 在自己的软件中使用鼠标
- linux print$共享文件夹,利用python的看门狗在linux下监控afp共享文件夹
- 深入理解 Android 9.0 Crash 机制(二)
- 什么是.svn文件? SVN使用说明
- java 字母序排序,Java -------- 首字母相关排序总结
- 全球工业互联网发展实践及启示!