文档章节

PHP在线生成Excel并发送邮件

wenjin312
 wenjin312
发布于 2017/06/28 15:28
字数 577
阅读 12
收藏 0

PHP 把二维数组导入到excel,返回参数是生成的文件数组

include_once 'function.php'; 
$email  = $_POST['email']; 
$titles = array("id", "时间", "名称"); //excel 列 
$datas = array( 
    0 => array( 
        "id" => "1", 
        "date" => date("Y-m-d", strtotime("-1 day")), 
        "name" => "二当家的" 
    ), 
    1 => array( 
        "id" => "2", 
        "date" => date("Y-m-d"), 
        "name" => "分享微博送30积分" 
    ), 
); 
$file_name = date("Y-m-d") . "二当家的excel发送"; 
$attachments = sendExcel($file_name, $titles, $datas);

发送生成的文件到指定邮箱

$rs = sendMail($email, "标题测试", "二当家的,欢迎来到二当家的<a href='http://www.erdangjiade.com'>http://www.erdangjiade.com</a>", $attachments); 
echo $rs;

 记得在sendMail方法里面配置邮件服务器,最好是企业邮箱,比如QQ企业邮箱,会立即收到。163等普通邮箱发送频繁会被冻结,过段时间又可以发送。

include_once 'function.php'; 
$email  = $_POST['email']; 
$titles = array("id", "时间", "名称"); //excel 列 
$datas = array( 
    0 => array( 
        "id" => "1", 
        "date" => date("Y-m-d", strtotime("-1 day")), 
        "name" => "二当家的" 
    ), 
    1 => array( 
        "id" => "2", 
        "date" => date("Y-m-d"), 
        "name" => "分享微博送30积分" 
    ), 
); 
$file_name = date("Y-m-d") . "二当家的excel发送"; 
$attachments = sendExcel($file_name, $titles, $datas);

发送生成的文件到指定邮箱

$rs = sendMail($email, "标题测试", "二当家的,欢迎来到二当家的<a href='http://www.erdangjiade.com'>http://www.erdangjiade.com</a>", $attachments); 
echo $rs;

记得在sendMail方法里面配置邮件服务器,最好是企业邮箱,比如QQ企业邮箱,会立即收到。163等普通邮箱发送频繁会被冻结,过段时间又可以发送。

function sendMail($to, $subject, $body = '', $attachment = null) { //$to 收件者 $subject主题 $body 内容  $attachment附件 
    $pattern = "/^([0-9A-Za-z\\-_\\.]+)@([0-9a-z]+\\.[a-z]{2,3}(\\.[a-z]{2})?)$/i"; 
    if (!preg_match($pattern, $to)) { 
        return "email_error"; 
    } 
    //邮件服务器配置 
    $detail = array( 
        "smpt" => "smtp.qq.com", 
        "account" => "", 
        "pwd" => "", 
    ); 
 
    $title = getGb2312("素材火发送excel到邮箱"); 
    include_once('phpmailer/class.phpmailer.php'); 
    $mail = new PHPMailer(); //PHPMailer对象 
    $mail->CharSet = 'GB2312'; //设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码 
    $mail->Encoding = "base64"; 
    $mail->IsSMTP();  // 设定使用SMTP服务 
    $mail->SMTPDebug = 0;                     // 关闭SMTP调试功能 
    $mail->SMTPAuth = true;                  // 启用 SMTP 验证功能 
    $mail->SMTPSecure = '';                 // 使用安全协议 
    $mail->Host = $detail['smpt'];  // SMTP 服务器 
    $mail->Port = "25";  // SMTP服务器的端口号 
    $mail->Username = $detail['account'];  // SMTP服务器用户名 
    $mail->Password = $detail['pwd'];  // SMTP服务器密码 
    $mail->Subject = getGb2312($subject); //邮件标题 
    $mail->SetFrom($detail['account'], $title); 
    $mail->MsgHTML(getGb2312($body)); 
    $mail->AddAddress(getGb2312($to), $title); 
 
    if (is_array($attachment)) { // 添加附件 
        foreach ($attachment as $file) { 
            is_file($file) && $mail->AddAttachment($file); 
        } 
    } 
    $rs = $mail->Send() ? true : $mail->ErrorInfo; 
    return $rs; 
}

本文转载自:

共有 人打赏支持
wenjin312
粉丝 1
博文 14
码字总数 1336
作品 0
广州
java sql编辑器 动态报表 数据库备份还原 quartz定时任务调度 自定义表单 java图片爬虫

A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码 B 集成代码生成器 [正反双向](单表、主表、明细表、树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0...

m15115131476
2017/11/13
0
0
java代码编辑器 pdf文件预览 主流SSM 代码生成器 shrio redis websocket即时通讯

A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码 B 集成代码生成器 [正反双向](单表、主表、明细表、树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0...

m15873835224
2017/11/11
0
0
java代码编辑器 pdf文件预览 主流SSM 代码生成器 shrio redis websocket即时通讯

获取【下载地址】 QQ: 313596790 官网 http://www.fhadmin.org/ A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码 B 集成代码生成器 [正反双向](单表、主表、明细表...

m17074358597
2017/11/09
0
0
java sql编辑器 动态报表 数据库备份还原 quartz定时任务调度 自定义表单 java图片爬虫

A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码 B 集成代码生成器 [正反双向](单表、主表、明细表、树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0...

m14798021435
2017/11/12
0
0
Java 后台框架源码 springmvc spring mybatis SSM 有代码生成器

官网 http://www.fhadmin.org/ A 调用摄像头拍照,自定义裁剪编辑头像,头像图片色度调节 B 集成代码生成器 [正反双向](单表、主表、明细表、树形表,快速开发利器)+快速表单构建器 freemake...

itfather
2017/06/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

spring 容器实现对bean的管理(注解方式解析,源码阅读)

因为最近在研究学习spring boot,所以这里想详细学习回顾了一下spring 容器对bean的一些管理方式和部分源码学习。 首先初始类AnnotationConfigApplicationContext,简单源码查看,支持两个参...

小海bug
11分钟前
0
0
数据结构:二分查找 java

二分查找的前提是有序存储,利用顺序存储和元素排序 /** * 二分查找,查找成功,返回下标记 * @param values * @param begin * @param end * @param key * @param <T> * @ret...

京一
28分钟前
0
0
@SpringBootApplication 注解

@SpringBootApplication注解是一个组合注解,包含以下注解 @Target(ElementType.TYPE) 注解的作用目标 @Retention(RetentionPolicy.RUNTIME) Reteniton的作用是定义被它所注解的注解保留多久,...

java.刘
41分钟前
0
0
sentinel自定义DataSource实战

序 本文主要研究一下如何自定义sentinel的DataSource,这里以jdbc为例。 maven <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-sen......

go4it
57分钟前
1
0
xgboost/gbdt在调参时为什么树的深度很少就能达到很高的精度?

问题: 用xgboost/gbdt在在调参的时候把树的最大深度调成6就有很高的精度了。但是用DecisionTree/RandomForest的时候需要把树的深度调到15或更高。用RandomForest所需要的树的深度和Decisio...

tantexian
58分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部