原生php生成导出execle表格(已解决)

<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>*{margin: 0;padding: 0;}</style>
</head>
<body>
<table style="border: 1px solid #000;margin: 0 auto;"><thead ><tr><th style="border-right: 1px solid #000; border-bottom: 1px solid #000;">序号</th><th style="border-right: 1px solid #000; border-bottom: 1px solid #000;">名称</th><th style="border-right: 1px solid #000; border-bottom: 1px solid #000;">留言</th><th style="border-bottom: 1px solid #000;">最后修改时间</th></tr></thead><tbody>{{--循环后端控制器传来的数据,进行循环渲染模板--}}@foreach($data as $k=>$v)<tr><td style="border-right: 1px solid #000; border-bottom: 1px solid #000; text-align: center;">{{$k+1}}</td><td style="border-right: 1px solid #000; border-bottom: 1px solid #000; text-align: center;">{{$v['name']}}</td><td style="border-right: 1px solid #000; border-bottom: 1px solid #000; text-align: center;">{{$v['message_board']}}</td><td style="border-bottom: 1px solid #000; text-align: center;">{{$v['time']}}</td></tr>@endforeach</tbody></table>
</body>
</html>

html模板效果图

  • 第二步:

1.创建php加载Execle模板文件控制器

//加载Execle模板文件
public function testHTML(){//查询数据库获取结构$data = Message::select('name','message_board','updated_at')->get();//将结果分配到模板上return view('Test.test.test',compact('data'));ray_merge)),$array_merge);
}

2.创建php导出execle文件控制器

public function createdExecle(){//获取execle.html模板的访问地址。$url=url('testHTML');//相当于:https://xcx.liutong.pro/testHTML 其中url()这是laravel框架中的辅助函数。//读取该模板文件中的内容$html= file_get_contents($url);//设置请求头信息header("Content-type: application/vnd.ms-excel; charset=utf8");//下载execle表格并设置编码为utf8header("Content-Disposition: attachment; filename=filename.xls");//生成execleob_end_clean();//清空(擦除)缓冲区并关闭输出缓冲header('Pragma: public');//Content-Length用于描述HTTP消息实体的传输长度the transfer-length of the message-body。header('Expires: 0');//Expires: 0:缓存过期时间;header('Cache-Control:must-revalidate,post-check=0,pre-check=0');//如果值为private或Must-revalidate,则只有第一次访问时会访问服务器//Content-Type: application/octet-stream(.*二进制拓展名):对应拓展名-http://tool.oschina.net/commonsheader('Content-Type:application/force-download');//告诉浏览器强制下载header('Content-Type:application/vnd.ms-execl');//打开页面后立即出现下载保存窗口,下载的文件为execlheader('Content-Type:application/octet-stream');//打开页面后立即出现下载保存窗口,下载的文件为bin / exe / dll /soheader('Content-Type:application/download');//下载文件header('Content-Transfer-Encoding:binary');//告知接收端为了保证报文的可靠传输,对报文采用了什么编码方式$data = $html;//得到模板文件中的内容 并进行输入echo $data. "\t";}

注意我使用的是laravel5.8版本,上述2个控制器需要你自己在laravel 路由文件中自己配置路由。然后再通过路由访问createdExecle()这个方法即可。

最后生成的效果图

注意:
execle需要样式的时候请在.html中写嵌入式css,否则样式将不会生效。
正确的写法示例:

<th style="border-right: 1px solid #000; border-bottom: 1px solid #000;">序号</th>

原生php生成导出execle表格(已解决)相关推荐

  1. FineReport 报表模板生成+导出Excel表格

    跟spring boot 整合 :https://blog.csdn.net/zhanglixin_1984/article/details/79194145 看官方的文档纠结了一天,好东西,这个怎么 ...

  2. csgo如何保存自己的cfg_[CS:GO]如何导出cfg文件 最新方法[已解决]

    今天小虎给大家带来[CS:GO]如何导出cfg文件[已解决],希望大家能够有所帮助. 第一步:首先在Steam库中找到CSGO游戏,并右键,选择"浏览本地文件". 第二步:点击上方 ...

  3. freemarker 应用模板导出Execle(解决生成弹出版本不适合)

    1. jsp 页面链接 function exportExcel(type) {         confirmx('确认要导出数据吗?', function() {             var ...

  4. PowerDesiger 15逆向生成工程E-R图及导出word表格

    应用环境:win8(64位)+oracle10g(32位)服务端+PowerDesigner15 需求:oracle数据库中的表结构是web工程框架hibernate 自动生成,现需要将数据库中已有的 ...

  5. vue实现HTML转PDF (已解决清晰、页边距、图片跨域导出等问题)

    最近有需求做简历打印的功能,就又花时间研究了一下html转图片导出,里面牵扯到多页pdf导出时的分页和页边距问题,清晰度问题以及图片跨域问题等.我们一个一个来解决. 一.先说HTML转PDF的实现方法 ...

  6. SAP 导出 HTML,【我sap这导出数据表格export.mhtml怎么转换为 excel 工作表.xlsx】excel生成html表格数据...

    如何把Html网页格式转成Excel表格 1.单击数据--导部数据--新建Web查询. 2.勾选我可以此内容,允许播放,单击继续按钮. 3.在地址栏输入网站地址,转到此网站里面. 4.跳转到指定网页, ...

  7. 【VS问题已解决】警告被视为错误 - 没有生成“object”文件

    [VS问题已解决]警告被视为错误 - 没有生成"object"文件 目前遇到这个问题主要是因为代码存在不明显的语法错误.在VS生成解决方案的编译阶段之前会检查有没有明显的语法问题. ...

  8. 解决导入导出Excel表格文字乱码问题

    解决导入导出Excel表格文字乱码问题 参考文章: (1)解决导入导出Excel表格文字乱码问题 (2)https://www.cnblogs.com/minjh/p/12299920.html 备忘 ...

  9. Vue导出Excel乱码问题(已解决)

    后端已经写好了导出Excel的接口,调用接口会发现后端返回的是二进制流文件 实现方法: 在封装接口时,给接口传递一个参数 [ responseType: 'blob' ]   该参数是处理导出Exce ...

最新文章

  1. C语言实现RC4序列密码
  2. vc++ 6.0对话框上无法显示中文(乱码)
  3. 北大OJ百练——2721:忽略大小写比较字符串大小
  4. python教程:实现延时回调普通函数的方法
  5. 医学工作者如何进行医学科研设计?
  6. 统计与机器学习的异同
  7. 2007年noip普及组初赛试题
  8. 深度学习(10):自然语言处理(转)
  9. EL表达式判断条件要写在${}内
  10. [洛谷1681]最大正方形II
  11. python中合法命名的变量名_「变量名」python中变量的命名以及使用 - 金橙教程网...
  12. 真正的手机密码大全!(整理完整版)
  13. SEO优化:站群的操作方法有哪些,网站集群系统是什么?
  14. 201671030116宋菲菲 词频统计软件项目报告
  15. markdown学习笔记——字体/分割线/删除线/下划线
  16. 风格迁移1-02:Liquid Warping GAN(Impersonator)-源码模型测试-报错解决
  17. 您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。
  18. 深入理解latch: cache buffers chains
  19. TypeError: slice indices must be integers 数组索引必须是整数
  20. 有一千万资产能被称为富二代吗?

热门文章

  1. Linux中的远程登陆
  2. 酒精类测试软件系统,手机酒精测试软件靠谱吗? 这司机信了 结果酒驾!
  3. Collatz 序列(考拉咨猜想),用Python自动化无聊的东西-chapter3
  4. 如何给女朋友买个趁心的笔记本?
  5. 【Java核心技术卷】静态语言和动态语言对比
  6. 我好久没有以小步紧跑去迎接一个人的那种快乐了
  7. 切图神器-cutterman
  8. path变量、命令行cmd、进制、位权相关介绍及使用
  9. 谈谈总经理助理一岗_早职到
  10. java计算机毕业设计中药实验管理系统源码+数据库+系统+lw文档