php_excel 和 libxl 类库的使用
PHP_EXCEL libxl 类库的使用
PHP_EXCEL是目前找到功能最全、最快的读取写入excel的扩展,支持xls和xlsx格式的excel。该扩展基于libxl库(收费)
ExcelBook 使用文档下载
该项目需要使用两个文件: libxl.dll 库, phpexcel 扩展文件(win版本phpexcel.dll, linux版本phpexcel.so)
1.参考网站
1)phpexcel 扩展作者 iliaal, 项目地址
2)扩展的使用介绍
3)基本看代码和作者注释
4)测试用例, 可以参考
5)写入性能对比
6)libxl库, 官网地址
2.扩展安装
1 php_excel 扩展安装参考
2.扩展使用
$xlBook = new ExcelBook(NULL,NULL,TRUE);
$xlBook->setLocale('UTF-8');
$xlSheet = $xlBook->addSheet('sheet1');
$xlFormat = $xlBook->addFormat();
$xlFormat->borderStyle(ExcelFormat::BORDERSTYLE_THIN);
$xlFormat->verticalAlign(ExcelFormat::ALIGNV_CENTER);
$xlFormat->horizontalAlign(ExcelFormat::ALIGNH_CENTER);
$xlRow = 0;
$data = array();//二维数组
foreach ($data as $k=>$v)
{
// 整行写入,详细用法参考 https://github.com/iliaal/php_excel/blob/master/docs/ExcelSheet.php
//function writeRow($rownum=0,$data=array(),$colnum_start=0,$format=null)
$xlSheet->writeRow($xlRow,$v,0,$xlFormat);
$xlRow++;
}
//设置页眉和页脚参考:https://github.com/iliaal/php_excel/blob/master/tests/042.phpt
$footer = '&R &P of &N';
$title = 'test';
$xlfile = '/tmp/test.xls';
$xlSheet->setHCenter(true);
$xlSheet->setPaper(ExcelSheet::PAPER_A4);
$xlSheet->setLandscape(true);
$xlSheet->setHeader("&L &I &C &E ".$test." &R ", 0.5);
$xlSheet->setFooter($footer,0.25);
$xlBook->save($xlfile);