PHPExcel 无法读取 Excel 4.0 工作表

PHPExcel can't read Excel 4.0 worksheet

有一个旨在导入 Excel sheet 的项目:该文件是报告,而不是平面文件,无法获得此类文件。所以我正在使用 PHP Excel 来读取文件并将我们需要的数据保存到应用程序中。

问题是文件是 Excel 4.0 格式,我无法编辑(显然),它可以在 MS Excel 应用程序中打开和查看,但是 PHP Excel 尝试使用 Excel5:

读取时抛出异常

Fatal error: Uncaught exception 'PHPExcel_Reader_Exception' with message 'The filename C:/xampp/htdocs/uploads/PS.xls is not recognised as an OLE file' in C:\xampp\htdocs\includes\PHPExcel-1.8\Classes\PHPExcel\Shared\OLERead.php on line 90

PHP Excel 将文件标识为 HTML 格式,但也会抛出错误:

Warning: DOMDocument::loadHTML(): Invalid char in CDATA 0x4 in Entity, line: 1 in C:\xampp\htdocs\includes\PHPExcel-1.8\Classes\PHPExcel\Reader\HTML.php on line 495

我想这是因为数据包含特殊字符 (UTF-8),但在 PHPExcel 中没有发现任何可以改变编码的东西...也找不到关于这个问题的任何信息我开始认为对此没有解决方案,除非要求用户将数据复制并粘贴到“体面的”Excel 文件...这种方法有效,但需要一些手动操作。

不,它无法读取。 PHPExcel 可以读取的最低 BIFF 格式版本是 BIFF 5(从 1993 年开始)。

祝你好运,找到任何能够读取 BIFF 4(自 1992 年)的东西。 BIFF 4 使用 OLE1,而 PHPExcel 只能使用 OLE2 读取 .xls 文件(从 BIFF 5 开始)。我不知道有任何纯 PHP 扩展可以处理这种早期格式;您可能需要使用商业 LibXl 扩展。