Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHPExcel lib导入以制表符分隔的CSV文件_Php_Csv_Phpexcel_Yii2 Advanced App_Phpexcelreader - Fatal编程技术网

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

使用PHPExcel lib导入以制表符分隔的CSV文件,php,csv,phpexcel,yii2-advanced-app,phpexcelreader,Php,Csv,Phpexcel,Yii2 Advanced App,Phpexcelreader,我正在尝试使用phpexcellib导入CSV文件。我的CSV文件有\t或tab作为分隔符 所以当我试图在屏幕上打印结果时,每个逗号都被视为新的单元格,就像这样 但实际上,我需要为每一行导出一行数据,并为每一个制表符分隔符用引号分隔,就像这个一样 这是我在控制器中读取和写入数据的代码: $worksheet = $objPHPExcelDetail->getActiveSheet(); foreach ($worksheet->getRowIterator() a

我正在尝试使用phpexcellib导入CSV文件。我的CSV文件有\t或tab作为分隔符

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

但实际上,我需要为每一行导出一行数据,并为每一个制表符分隔符用引号分隔,就像这个一样

这是我在控制器中读取和写入数据的代码:

$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";
                    }
                }
        }
如何使用分隔符读取CSV文件,并为每行设置一行

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

查看CSV阅读器在…中可用的方法。。。。你会发现有一种方法允许你说使用一个标签而不是一个


如果您只需要阅读csv,那么fgetcsv可能会更好。@Maerlyn yah您是对的。我以前用过它,我用PHPExcel for csv,因为我还可以在一个页面中导入Excel文件。它存在于文档中,我已经尝试过了,这是工作。谢谢你的帮助。
$objReader = PHPExcel_IOFactory::createReader('CSV')
    ->setDelimiter("\t");
$objPHPExcel = $objReader->load($myFileName);