1.我们用php来生成一个excel文档来讲述其原理:
excel2007里面的文档目录组成部分为:
2.我们使用ziparchive()方法来生成一个简易的excel文件。
使用方法:
3.代码如下:
<?php
header("content-type:text/html;charset=utf-8");
//生成一个2007版本的excel文件
//1.实例化一个压缩文档对象
$ex= new ziparchive();
//2.打开一个excel文件(2007版本)
$ex->open('./01.xlsx',ziparchive::create);
//3.创建excel文档的各个组成文件(文件目录、xml文件)
$ex->addfromstring('[content_types].xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('_rels/.rels',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('docprops/app.xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('docprops/core.xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('docprops/custom.xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('xl/_rels/workbork.xml.rels',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('xl/theme/theme1.xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('xl/theme/worksheets/sheet1.xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('xl/theme/worksheets/sheet2.xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('xl/theme/worksheets/sheet3.xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('xl/styles.xml',"<?xml version='1.0' charset='utf-8' ?>");
$ex->addfromstring('xl/workbook.xml',"<?xml version='1.0' charset='utf-8' ?>");
?>
执行php后会生成一个excel2007文件,把此文件改名压缩后就可以看到生成的文件,但此版本的excel文件并不完整,不能使用,要使用还需要借助excel包来完成大量的数据写入功能。此举只是完成ecxcel文件生成的理解。