给多个地址发邮件的类


Posted in PHP onOctober 09, 2006

<?php  

////////////////////////////////////////////////////////////  
//   EmailClass 0.5  
//   class for sending mail  
//  
//   Paul Schreiber  
//   php@paulschreiber.com  
//   http://paulschreiber.com/  
//  
//   parameters  
//   ----------  
//   - subject, message, senderName, senderEmail and toList are required  
//   - ccList, bccList and replyTo are optional  
//   - toList, ccList and bccList can be strings or arrays of strings  
//     (those strings should be valid email addresses  
//  
//   example  
//   -------  
//   $m = new email ( "hello there",            // subject  
//                    "how are you?",           // message body  
//                    "paul",                   // sender's name  
//                    "foo@foobar.com",         // sender's email  
//                    array("paul@foobar.com", "foo@bar.com"), // To: recipients  
//                    "paul@whereever.com"      // Cc: recipient  
//                   );  
//  
//       print "mail sent, result was" . $m->send();  
//  
//  
//  

if ( ! defined( 'MAIL_CLASS_DEFINED' ) ) {  
        define('MAIL_CLASS_DEFINED', 1 );  

class email {  

        // the constructor!  
        function email ( $subject, $message, $senderName, $senderEmail, $toList, $ccList=0, $bccList=0, $replyTo=0) {  
                $this->sender = $senderName . " <$senderEmail>";  
                $this->replyTo = $replyTo;  
                $this->subject = $subject;  
                $this->message = $message;  

                // set the To: recipient(s)  
                if ( is_array($toList) ) {  
                        $this->to = join( $toList, "," );  
                } else {  
                        $this->to = $toList;  
                }  

                // set the Cc: recipient(s)  
                if ( is_array($ccList) && sizeof($ccList) ) {  
                        $this->cc = join( $ccList, "," );  
                } elseif ( $ccList ) {  
                        $this->cc = $ccList;  
                }  

                // set the Bcc: recipient(s)  
                if ( is_array($bccList) && sizeof($bccList) ) {  
                        $this->bcc = join( $bccList, "," );  
                } elseif ( $bccList ) {  
                        $this->bcc = $bccList;  
                }  

        }  

        // send the message; this is actually just a wrapper for   
        // PHP's mail() function; heck, it's PHP's mail function done right :-)  
        // you could override this method to:  
        // (a) use sendmail directly  
        // (b) do SMTP with sockets  
        function send () {  
                // create the headers needed by PHP's mail() function  

                // sender  
                $this->headers = "From: " . $this->sender . "\n";  

                // reply-to address  
                if ( $this->replyTo ) {  
                        $this->headers .= "Reply-To: " . $this->replyTo . "\n";  
                }  

                // Cc: recipient(s)  
                if ( $this->cc ) {  
                        $this->headers .= "Cc: " . $this->cc . "\n";  
                }  

                // Bcc: recipient(s)  
                if ( $this->bcc ) {  
                        $this->headers .= "Bcc: " . $this->bcc . "\n";  
                }  

                return mail ( $this->to, $this->subject, $this->message, $this->headers );  
        }  
}  

}  
?>  

PHP 相关文章推荐
一个简单的自动发送邮件系统(二)
Oct 09 PHP
php 之 没有mysql支持时的替代方案
Oct 09 PHP
php面向对象全攻略 (五) 封装性
Sep 30 PHP
PHP+Mysql+jQuery实现发布微博程序 jQuery篇
Oct 08 PHP
PHP容易被忽略而出错陷阱 数字与字符串比较
Nov 10 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
Sep 29 PHP
php通过sort()函数给数组排序的方法
Mar 18 PHP
php实现统计网站在线人数的方法
May 12 PHP
PHP实现蛇形矩阵,回环矩阵及数字螺旋矩阵的方法分析
May 29 PHP
PHP+redis实现的限制抢购防止商品超发功能详解
Sep 19 PHP
Laravel自定义 封装便捷返回Json数据格式的引用方法
Sep 29 PHP
PHP架构及原理知识点详解
Dec 22 PHP
用PHP调用数据库的存贮过程!
Oct 09 #PHP
PHP脚本的10个技巧(2)
Oct 09 #PHP
PHP脚本的10个技巧(1)
Oct 09 #PHP
图书管理程序(三)
Oct 09 #PHP
一个从别的网站抓取信息的例子(域名查询)
Oct 09 #PHP
一个PHP+MSSQL分页的例子
Oct 09 #PHP
基于文本的留言簿
Oct 09 #PHP
You might like
PHP获得数组交集与差集的方法
2015/06/10 PHP
Yii清理缓存的方法
2016/01/06 PHP
php中yar框架实例用法讲解
2020/12/27 PHP
让FireFox支持innerText的实现代码
2009/12/01 Javascript
Jquery css函数用法(判断标签是否拥有某属性)
2011/05/28 Javascript
js监听键盘事件示例代码
2013/07/26 Javascript
jquery中prop()方法和attr()方法的区别浅析
2013/09/06 Javascript
一个JavaScript处理textarea中的字符成每一行实例
2014/09/22 Javascript
jQuery使用drag效果实现自由拖拽div
2015/06/11 Javascript
JavaScript中调用函数的4种方式代码实例
2015/07/08 Javascript
javascript实现延时显示提示框特效代码
2016/04/27 Javascript
jQuery Plupload上传插件的使用
2017/04/19 jQuery
Vue2 使用 Echarts 创建图表实例代码
2017/05/18 Javascript
使用requirejs模块化开发多页面一个入口js的使用方式
2017/06/14 Javascript
vue-router 源码之实现一个简单的 vue-router
2018/07/02 Javascript
微信小程序实现天气预报功能
2018/07/18 Javascript
创建echart多个联动的示例代码
2018/11/23 Javascript
JavaScript剩余操作符Rest Operator详解
2019/07/20 Javascript
如何通过shell脚本自动生成vue文件详解
2019/09/10 Javascript
vue-cli3 引入 font-awesome的操作
2020/08/11 Javascript
[56:38]DOTA2-DPC中国联赛正赛Aster vs Magma BO3 第一场 3月5日
2021/03/11 DOTA
Python中index()和seek()的用法(详解)
2017/04/27 Python
Python人脸识别初探
2017/12/21 Python
Python编程二分法实现冒泡算法+快速排序代码示例
2018/01/15 Python
pycharm安装和首次使用教程
2018/08/27 Python
Python list列表中删除多个重复元素操作示例
2019/02/27 Python
用Python做一个久坐提醒小助手的示例代码
2020/02/10 Python
使用 pytorch 创建神经网络拟合sin函数的实现
2020/02/24 Python
python 如何调用远程接口
2020/09/11 Python
基于HTML5代码实现折叠菜单附源码下载
2015/11/27 HTML / CSS
逼真的HTML5树叶飘落动画
2016/03/01 HTML / CSS
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
HTML5超文本标记语言的实现方法
2020/09/24 HTML / CSS
法律专业个人实习自我鉴定
2013/09/23 职场文书
党员学习新党章思想汇报
2014/10/25 职场文书
撤诉申请书法院范本
2015/05/18 职场文书