使用 PHPExcel lib 导入带制表符分隔的 CSV 文件

Import CSV file with tab delimited using PHPExcel lib

我正在尝试使用 PHPExcel 库导入 CSV 文件。我的 CSV 文件有 \ttab 作为分隔符。

所以当我尝试在屏幕上打印结果时,每个 逗号 都被视为新单元格,就像这样

但实际上我需要为每一行在一行中导出数据,并为每个 tab 用引号分隔 (")分隔符,就像这个

这是我在 Controller 中用于读取和写入数据的代码:

$worksheet = $objPHPExcelDetail->getActiveSheet();
        foreach ($worksheet->getRowIterator() as $row) {
                echo '<pre>';
                echo 'Row number: ' . $row->getRowIndex() . "\r\n";

                $cellIterator = $row->getCellIterator();
                $cellIterator->setIterateOnlyExistingCells(false); // Loop all cells, even if it is not set     

                foreach ($cellIterator as $cell) {
                    if (!is_null($cell)) {
                        echo 'Cell: ' . $cell->getCoordinate() . ' - ' . $cell->getValue() . "\r\n";
                    }
                }
        }

如何读取带有\t 分隔符的CSV 文件,并将每一行设置为一行?

这是加载您需要考虑的文件的代码。

查看 PHPExcel Documentation.... you'll find that there is a setDelimiter() 方法中 CSV Reader 可用的方法,它允许您说使用 tab 而不是 ,

$objReader = PHPExcel_IOFactory::createReader('CSV')
    ->setDelimiter("\t");
$objPHPExcel = $objReader->load($myFileName);