PHP导出EXCEL方法总结

前段时间因为PHP项目需要要实现WEB 导出EXCEL,通过在网上搜索得出,导出EXCEL的方法可以分为服务器端用PHP导出和前端用JS导出;按是否需要导出端安装EXCEL又可分为需要安装EXCEL组件的导出和不需要安装EXCEL组件的导出;另外还可区分为是否支持手机端的导出,在前端导出还需要考虑不同浏览器兼容。

用JS导出的方法、参见

http://blog.csdn.net/aa122273328/article/details/50388673

此文章中的JS 方法多是ActiveXObject("Excel.Application") 来实现 EXCEL生成,其中一种方法是生成回车和TAB符分隔的格式文件,此格式在PC上用EXCEL打开没有问题,但是在手机上可能打不开。按HTML TABLE格式导出的文件以及CSV文件在手机上也存在手机OFFICE无法直接打开的问题 。手机浏览器(UC\华为)上也不支持 window.location.href = uri + base64(format(template, ctx))   这种方式进行下载文件,始终显示下载失败。

JS 导出EXCEL简洁的方法还有

https://stackoverflow.com/questions/22317951/export-html-table-data-to-excel-using-javascript-jquery-is-not-working-properl

以下文章中的JS导出方法可以控制下载文件名,但在手机浏览器中经常失败

http://blog.csdn.net/qq285679784/article/details/58010271

用JS导出又不想受限于安装EXCEL可以使用前端插件

http://jlins.iteye.com/blog/1882343

直接在客户端通过js导出excel的方法(不限浏览器,不必安装excel)

 

最近项目中需要实现在客户端导出excel的功能,不想受浏览器的限制,不想受是否安装excel的限制,通过强大的谷哥找到以下两种方案:

 

1. 使用downloadify,这是基于flash的一个组件,支持原生js,以及jquery, mootools等调用。看demo可以导出文本文件,从而肯定可以导出csv文件,而实现导出excel的功能。后来发现,大名鼎鼎的ExtJs中的Grid,也是使用这个实现的在client导出excel。

地址:https://github.com/dcneiner/Downloadify



2. 使用jQuery的插件dataTables,这是一个优秀的客户端表格插件,带有导出excel, pdf等功能,导出功能也是通过flash实现。至于是不是也用了什么第三方组件,还未细看。

DEMO:  http://datatables.net/extras/tabletools/


在服务器端导出并且不依整于EXCEL的方法

http://blog.csdn.net/u014236259/article/details/60601767

此方法需要第三方插件(开源项目)导出的文件可以在手机端正常导出并打开。需要不依整于EXCEL并且可以支持手机端的这是可行的方法

笔者使用此方法时开始导出的文件始终打不开,倒腾半天终于悲催的发现是PHP文件 “


在用JS实现在手机端导出EXCEL,我没有找到可行的实现下载文件名可自定义,并且手机浏览器提示下载并能成功下载的方案。哪位同仁知道,烦请留 言告之






你可能感兴趣的:(PHP导出EXCEL方法总结)