php 邮件发送如何进行的呢?

php邮件发送是通过smtp协议进行的。

下面是一个php邮件发送的类的一个函数。

文件下载

function sendmail($to, $from, $subject = "", $body = "", $mailtype, $cc = "", $bcc = "", $additional_headers = "")
{
$mail_from = $this->get_address($this->strip_comment($from));
$body = ereg_replace("(^|(\r\n))(\.)", "\1.\3", $body);
$header = "MIME-Version:1.0\r\n"; if($mailtype=="HTML"){
$header .= "Content-Type:text/html\r\n";
} $header .= "To: ".$to."\r\n"; if ($cc != "") {
$header .= "Cc: ".$cc."\r\n";
} $header .= "From: 报名邮件.<".$from.">\r\n";
$header .= "Subject: ".$subject."\r\n";
$header .= $additional_headers;
$header .= "Date: ".date("r")."\r\n";
$header .= "X-Mailer:By Redhat (PHP/".phpversion().")\r\n";
$utfheader=iconv("UTF-8","GB2312",$header);
list($msec, $sec) = explode(" ", microtime()); $header .= "Message-ID: <".date("YmdHis", $sec).".".($msec*).".".$mail_from.">\r\n"; $TO = explode(",", $this->strip_comment($to)); if ($cc != "") {
$TO = array_merge($TO, explode(",", $this->strip_comment($cc)));
} if ($bcc != "") {
$TO = array_merge($TO, explode(",", $this->strip_comment($bcc)));
} $sent = TRUE; foreach ($TO as $rcpt_to) {
$rcpt_to = $this->get_address($rcpt_to); if (!$this->smtp_sockopen($rcpt_to)) {
$this->log_write("Error: Cannot send email to ".$rcpt_to."\n");
$sent = FALSE;
continue;
} if ($this->smtp_send($this->host_name, $mail_from, $rcpt_to, $utfheader, $body)) {
$this->log_write("E-mail has been sent to <".$rcpt_to.">\n");
} else {
$this->log_write("Error: Cannot send email to <".$rcpt_to.">\n");
$sent = FALSE;
} fclose($this->sock); $this->log_write("Disconnected from remote host\n");
}
return $sent;
}

再看示例

include("sendmail.php");//发送邮件类
####################--发邮件--####################
$smtpserver = "smtp.126.com";//SMTP服务器
$smtpserverport = 25;//SMTP服务器端口
$smtpusermail = "test@126.com";//SMTP服务器的用户邮箱
$smtpuser = "test";//SMTP服务器的用户帐号
$smtppass = "123456";//SMTP服务器的用户密码 $smtpemailto = "dianzhong@126.com";//发送给谁
$mailsubject = $username.'报名!';//邮件主题
$mailtime = date("Y-m-d H:i:s");
$mailbody = $content;//邮件内容 $utfmailbody = iconv("UTF-8","GB2312",$mailbody);//转换邮件编码
$mailtype = "HTML";//邮件格式(HTML/TXT),TXT为文本邮件

在这里需要一个smtp服务器。我们可以注册一个126的邮箱。 在上面的代码中,修改成你自己注册的邮箱地址和用户名、密码即可。

这样就可以用php发邮件了。

我做了一个用php发邮件的例子。

下载后记得修改里面的邮箱用户名和密码哦。

有问题可以留言。

php 邮件发送代码-php邮件群发的更多相关文章

  1. c# 邮件发送代码分享

    /// <summary> /// 发送邮件方法 /// </summary> /// <param name="sendMail">发送人&l ...

  2. spring 5.x 系列第20篇 ——spring简单邮件、附件邮件、内嵌资源邮件、模板邮件发送 (代码配置方式)

    源码Gitub地址:https://github.com/heibaiying/spring-samples-for-all 一.说明 1.1 项目结构说明 邮件发送配置类为com.heibaiyin ...

  3. SpringBoot系列(十四)集成邮件发送服务及邮件发送的几种方式

    往期推荐 SpringBoot系列(一)idea新建Springboot项目 SpringBoot系列(二)入门知识 springBoot系列(三)配置文件详解 SpringBoot系列(四)web静 ...

  4. 基于JavaMail的Java邮件发送:复杂邮件发送

    参考:http://blog.csdn.net/xietansheng/article/details/51722660package com.bfd.ftp.utils;import java.ut ...

  5. iOS开发之邮件发送代码

    邮件发送功能是由MessageUI Framework提供的,这个框架是iPhone sdk中最简单的框.由一个类.一个视图控制器,一个protocol组成. 一.创建视图控制器: MFMailCom ...

  6. 基于JavaMail的Java邮件发送:简单邮件发送

    使用Java应用程序发送 E-mail 十分简单,但是首先你应该在你的机器上安装 JavaMail API 和Java Activation Framework (JAF) . 您可以从 Java 网 ...

  7. .NET开发邮件发送功能的全面教程(含邮件组件源码)

    今天,给大家分享的是如何在.NET平台中开发“邮件发送”功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1)         邮件基础理论知识 2)         ...

  8. java spring 邮件发送

    开发中经常会遇到发送邮件进行用户验证,或者其它推送信息的情况,本文基于spring,完成邮件的发送,主要支持普通文本邮件的发送,html文本邮件的发送,带附件的邮件发送,没有实现群发.多个附件发送等需 ...

  9. .NET开发邮件发送功能

    .NET开发邮件发送功能 今天,给大家分享的是如何在.NET平台中开发“邮件发送”功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1)         邮件基础理论知 ...

随机推荐

  1. jQuery1.9(辅助函数)学习之——.serializeArray();

    .serializeArray();返回一个Array 描述: 将用作提交的表单元素的值编译成拥有name和value对象组成的数组.例如[ { name: a value: 1 }, { name: ...

  2. C#操作Excel文件(转)

    摘要:本文介绍了Excel对象.C#中的受管代码和非受管代码,并介绍了COM组件在.net环境中的使用. 关键词:受管代码:非受管代码:Excel对象:动态连接库 引言 Excel是微软公司办公自动化 ...

  3. PHPCMS V9二次开发]自定义字段模型-文本组

    phpcms v9,我们在做类似于酒店房型等类型的时候,需要用到文本组字段模型,但phpcms并未提供该模型.如下图所示效果: 展示效果如下: 步骤/方法 打开phpcms\modules\conte ...

  4. dede 删除栏目文章后, 让ID从1开始

    1)删除所有栏目,新建ID从1开始: ALTER TABLE `dede_arctype` AUTO_INCREMENT =1; 2)删除所有文章,新发布文章ID从1开始: ALTER TABLE ` ...

  5. common常用方法和部分算法

    var commonindex = function() {}; commonindex.prototype = { ajaxRequest: function(request) { $.ajax({ ...

  6. 高性能的EMI滤波器及其小型化设计技术

    1 EMI滤波器的常见问题及发展趋势首先介绍了影响EMI滤波器性能/体积的因素及EMI滤波器的常见问题:低频传导发射高.高频传导/辐射发射高.体积大,从而分析出EMI滤波器的发展趋势为高性能和小体积, ...

  7. linux开源论坛

    开源资源: 开源http://oss.org.cn/?action-news http://www.lupaworld.com/proj.php http://www.10pig.cn/linux/o ...

  8. Java组合与继承生成的类中构造函数的执行顺序

    [程序实例] import java.util.*; class Meal{ Meal() { System.out.println("Meal Constructor"); } ...

  9. jQuery效果-滑动

    index.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> &l ...

  10. MYSQL数据备份与还原学习笔记

    数据备份与还原   1.mysqldump 1.1 文件地址: E:\xampp\mysql\bin 文件名:mysqldump.exe CMD下进入mysqldump.exe cd E:\xampp ...