PHPExcel-将4个CSV文件读入一个包含4个spreedsheet的工作簿

PHPExcel-将4个CSV文件读入一个包含4个spreedsheet的工作簿,php,csv,phpexcel,Php,Csv,Phpexcel,我需要使用PHPExcel将4个CSV文件聚合到一个Excel工作簿中 使用单个CSV文件和mono电子表格工作簿都可以正常工作。 使用多个CSV,我无法将每个CSV文件放入单独的工作表中 如何使用PHPExcel实现这一点?您没有确切指定问题所在… 对于多个工作表excel文件,请执行以下操作: 加载CSV文件 创建新工作表 将CSV写入新工作表 转到1 来自文档: 如果您需要在工作簿中创建更多工作表,请按以下方法操作: $objWorksheet1 = $objPHPExcel->cr

我需要使用PHPExcel将4个CSV文件聚合到一个Excel工作簿中

使用单个CSV文件和mono电子表格工作簿都可以正常工作。 使用多个CSV,我无法将每个CSV文件放入单独的工作表中


如何使用PHPExcel实现这一点?

您没有确切指定问题所在…
对于多个工作表excel文件,请执行以下操作:

  • 加载CSV文件
  • 创建新工作表
  • 将CSV写入新工作表
  • 转到1
  • 来自文档:
    如果您需要在工作簿中创建更多工作表,请按以下方法操作:

    $objWorksheet1 = $objPHPExcel->createSheet();
    $objWorksheet1->setTitle('Another sheet');
    
    要设置活动工作表,请执行以下操作:

    $objWorksheet1->setActiveSheetIndex($index);
    

    PHPEXcel的SVN存储库中的Documentation/Examples/Readers目录中有一个这样的例子:它是example#13


    这正是我所做的,但所有的数据都写在第一张纸上。也很有帮助。。。编写最终文件:
    //保存Excel 2007文件$objWriter=PHPExcel\u IOFactory::createWriter($objPHPExcel,'Excel2007')$objWriter->save(str_replace('.php'、'.xlsx'、u文件_u))
    
    include 'PHPExcel/IOFactory.php';
    
    
    $inputFileType = 'CSV';
    $inputFileNames = array('./example1.csv','./example2.csv','./example3.csv','./example4.csv');
    
    $objReader = PHPExcel_IOFactory::createReader($inputFileType);
    $inputFileName = array_shift($inputFileNames);
    $objPHPExcel = $objReader->load($inputFileName);
    $objPHPExcel->getActiveSheet()->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME));
    foreach($inputFileNames as $sheet => $inputFileName) {
        $objReader->setSheetIndex($sheet+1);
        $objReader->loadIntoExisting($inputFileName,$objPHPExcel);
        $objPHPExcel->getActiveSheet()->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME));
    }
    
    
    $loadedSheetNames = $objPHPExcel->getSheetNames();
    foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) {
        $objPHPExcel->setActiveSheetIndexByName($loadedSheetName);
        echo $loadedSheetName,PHP_EOL;
        $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
        var_dump($sheetData);
        echo PHP_EOL;
    }