当前位置:  开发笔记 > 编程语言 > 正文

在PHP中读取Excel文件

如何解决《在PHP中读取Excel文件》经验,为你挑选了4个好方法。

我正在尝试读取Excel文件(Office 2003).有一个Excel文件需要上传并解析其内容.

通过谷歌,我只能找到这些相关(和不充分的主题)的答案:生成Excel文件,阅读Excel XML文件,阅读Excel CSV文件或不完整的废弃项目.我拥有Office 2003,所以如果我需要任何文件,它们都可用.它安装在我的盒子上,但不能也不能安装在我的共享主机上.

编辑:到目前为止,所有答案都指向PHP-ExcelReader和/或关于如何使用它的这篇附加文章.



1> Ionuț G. Sta..:

据我所知,你有两个选择:

    Spreadsheet_Excel_Reader,它知道Office 2003二进制格式

    PHPExcel,它既了解Office 2003,也了解Excel 2007(XML).(按照链接,你会看到他们将这个库升级到PHPSpreadSheet)

PHPExcel使用Spreadsheet_Excel_Reader作为Office 2003格式.

更新:我曾经阅读过一些Excel文件,但我使用Office 2003 XML格式来阅读它们并告诉使用该应用程序的人保存并仅上传该类型的Excel文件.


PHPExcel始终能够读取和编写一系列电子表格格式.从主页的第一个非标题行引用:"为PHP编程语言提供一组类的项目,允许您__写入___和__read从___不同的文件格式,如Excel 2007,PDF,HTML"(我的重点) )

2> Luis Melgrat..:

我使用PHP-ExcelReader来读取xls文件,效果很好.


它不适合我,我有PHP 5.2+,给我错误"通过引用分配新的返回值已被弃用"
嘿伙计们,我解决了一些问题,使它与最近的PHP 5版本兼容:http://pastebin.com/YNUZANcs所有学分都归原始开发者所有.
据我了解,PHP-ExcelReader是一个可以处理.xls文件的类,但不能处理.xlsx文件.PHPExcel可以处理许多不同的格式(包括.xls和.xlsx)(https://github.com/PHPOffice/Phpexcel)并且处于稳定版本.PHPSpreadsheet是PHPExcel的进一步开发,但不稳定(因为我写的是这样):https://github.com/PHPOffice/PhpSpreadsheet

3> 小智..:

这取决于您希望如何使用excel文件中的数据.如果要将其导入mysql,只需将其保存为CSV格式的文件,然后使用fgetcsv进行解析.



4> Sergey Shuch..:

阅读XLSX(Excel 97-2003)
https://github.com/shuchkin/simplexls

if ( $xls = SimpleXLS::parse('book.xls') ) {
    print_r( $xls->rows() );
} else {
    echo SimpleXLS::parseError();
}

阅读XLSX(Excel 2003+)
https://github.com/shuchkin/simplexlsx

if ( $xlsx = SimpleXLSX::parse('book.xlsx') ) {
    print_r( $xlsx->rows() );
} else {
    echo SimpleXLSX::parseError();
}

输出量

数组(
    [0] =>数组
        (
            [0] => ISBN
            [1] =>标题
            [2] =>作者
            [3] =>发布者
            [4] => ctry
        )
    [1] =>数组
        (
            [0] => 618260307
            [1] =>霍比特人
            [2] => JRR托尔金
            [3] =>霍顿·米夫林
            [4] =>美国
       )

)

CSV php阅读器
https://github.com/shuchkin/simplecsv

推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有