zoukankan      html  css  js  c++  java
  • PHP-EXCEL: LIBXL 使用方法

    PHP_EXCEL是目前找到功能最全、最快的读取写入excel的扩展,支持xls和xlsx格式的excel。该扩展基于libxl库(收费,公司已购买linux版)

    使用文档下载 : https://files.cnblogs.com/files/zakun/confoo_phpexcel.zip

    ===================================

    1.参考网站
    1)开发者 https://github.com/iliaal/php_excel
    2)扩展作者写的使用介绍 http://ilia.ws/files/confoo_phpexcel.pdf 
    3)由于没有文档,基本看代码和作者注释 https://github.com/iliaal/php_excel/tree/master/docs
    4)测试用例,也有很多方法,可以参考。https://github.com/iliaal/php_excel/tree/master/tests
    5)写入性能对比 https://blog.mayflower.de/4922-Performant-Handling-Excel-Files-PHP.html
    6)libxl http://libxl.com

    2.扩展安装
    1)仅支持linux系统,10.64.64.109、10.64.64.110 已安装
    2)安装参考 http://libxl.com/php.html

    3.扩展使用
    我们的项目中可以直接使用,代码可参考如下(另外:/protected/components/DataToExcel.php 是异步处理的主要方法):

    $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);

  • 相关阅读:
    学习进度笔记
    博雅数据机器学习07
    学习进度笔记
    博雅数据机器学习06
    《一级架构师》阅读笔记
    学习进度笔记
    博雅数据机器学习05
    递归的概念
    CSS学习笔记3:选择器及优先级
    CSS学习笔记2:伪类
  • 原文地址:https://www.cnblogs.com/zakun/p/12580051.html
Copyright © 2011-2022 走看看