我需要使用 PHPExcel 将 4 个 CSV 文件聚合到一个 Excel 工作簿中。
处理单个 CSV 文件和单电子表格工作簿都可以正常工作。 使用多个 CSV,我无法将每个 CSV 文件放入单独的工作表中。
如何使用 PHPExcel 实现此目的?
最佳答案
在 PHPEXcel 的 SVN 存储库的 Documentation/Examples/Readers 目录中有一个这样的示例:它是示例 #13
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;
}
关于PHPExcel - 将 4 个 CSV 文件读取到一个带有 4 个电子表格的工作簿中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8307741/