PHP把网页表单导出到word

<?php
/**
* 关于文件压缩和下载的类
* @author tycell
* @version 1.0
*/
namespace app\index\controller;

use think\Controller;
use think\Db;
use think\Loader;
use think\Request;

class Ceword extends Controller
{
//把PHP网页表单导出到word文档
public function index()
{
//打开缓冲区
ob_start();
//设置为一个下载类型
header("Content-type:application/octet-steam");
//可以请求网页实体的一个或者多个子范围字段
header("Accept-Ranges:bytes");
//将查询结果导出到word
header("Content-type:application/vnd.ms-excel");
//把请求所得的内容存为一个文件的时候提供一个默认的文件名
header('Content-Disposition:attachment;filename=叶梦迪.doc');
//内容打印位置
echo '<table border="1"><tr><td>啦啦</td><td>哈哈</td><td><img src="http://img.alicdn.com/tps/TB1YZkPLpXXXXbzXXXXXXXXXXXX-213-57.png"/></td></tr></table>';
//清除缓冲区内容
ob_end_flush();
}

public function getContent()
{
echo '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<xml><w:WordDocument><w:View>Print</w:View></xml>
</head>';
echo '<table border="1"><tr><td>啦啦</td><td>哈哈</td><td><img src="http://img.alicdn.com/tps/TB1YZkPLpXXXXbzXXXXXXXXXXXX-213-57.png"/></td></tr></table>';
//打开缓冲区
ob_start();
//指示响应可以被任何缓存区缓存
header('Cache-Control:public');
//设置一个下载类型
header('Content-type:application/octet-stream');
//可以请求网页实体的一个或者多个子范围字段
header('Accept-Ranges:bytes');
//判断浏览器类型
if(strpos($_SERVER['HTTP_USER_AGENT'],'MSIE')){
//把请求所得的内容存为一个文件的时候提供一个默认的文件名
header('Content-Disposition:attachment;filename=test.doc');
}else if(strpos($_SERVER['HTTP_USER_AGENT'],'Firefox')){
header('Content-Disposition:attachment;filename=test.doc');
}else{
header('Content-Disposition:attachment;filename=test.doc');
}
//让代码不被缓存
header("Pragma:no-cache");
//浏览器缓存的各种时限,设置为0,表示不进行缓存
header("Expires:0");
//清空缓存输出全部内容到浏览器
ob_end_flush();
}

}
posted @ 2019-05-16 15:48  ymd666  阅读(640)  评论(0编辑  收藏  举报