首页 > 解决方案 > 读取 xlsx 文件期间的喷口和未定义的偏移错误

问题描述

我在使用 SPOUT xlxs 阅读器插件时遇到了一个奇怪的问题。我收到错误

  Notice: Undefined offset: 19

在我的第 17 行的 test.xlsx 中。我不知道为什么。如果我插入一些文本没关系......但如果它是空的,我会出错......奇怪的是索引 19 之前的所有列(1 <= row < 17)都是空的,但它们不是得到任何错误。

在附件中我的测试文件:https ://github.com/box/spout/files/4134401/test.zip

我的代码测试:

include_once(dirname(dirname(__FILE__)) . "/vendors/spout/src/Spout/Autoloader/autoload.php");

use Box\Spout\Reader\Common\Creator\ReaderEntityFactory

$xlsx = ReaderEntityFactory::createReaderFromFile(dirname(__FILE__) . '/test.xlsx');

$xlsx->open(dirname(__FILE__) . '/test.xlsx');


foreach ($xlsx->getSheetIterator() as $sheet) {

    foreach ($sheet->getRowIterator() as $row) {

        $cells = $row->getCells();

        var_dump( $cells[18]->getValue() );
                var_dump( $cells[19]->getValue() ); //<---error offset 19 at row 17!!!!!!

    }

}

标签: phpxlsxspout

解决方案


推荐阅读