Может кто-нибудь подсказать мне, как конвертировать XLS в CSV с помощью PHP?
У меня есть таблица Excel, содержащая список документов, я хочу преобразовать ее в формат CSV с помощью PHP.
Это наверняка сработает,
require_once 'Classes/PHPExcel/IOFactory.php'; $inputFileType = 'Excel5'; $inputFileName = 'YOUR_EXCEL_FILE_PATH'; $objReader = PHPExcel_IOFactory::createReader($inputFileType); $objPHPExcelReader = $objReader->load($inputFileName); $loadedSheetNames = $objPHPExcelReader->getSheetNames(); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcelReader, 'CSV'); foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { $objWriter->setSheetIndex($sheetIndex); $objWriter->save($loadedSheetName.'.csv'); }
Надеюсь, это поможет ...
Переписать код, предоставленный @Rajat Modi, используя библиотеку PhpSpreadsheet, поскольку PHPExcel устарел.
https://github.com/PHPOffice/PhpSpreadsheet
https://phpspreadsheet.readthedocs.io/en/develop/
<?php require 'vendor\autoload.php'; use \PhpOffice\PhpSpreadsheet\Reader\Xlsx; use \PhpOffice\PhpSpreadsheet\Writer\Csv; $xls_file = "Example.xlsx"; $reader = new Xlsx(); $spreadsheet = $reader->load($xls_file); $loadedSheetNames = $spreadsheet->getSheetNames(); $writer = new Csv($spreadsheet); foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { $writer->setSheetIndex($sheetIndex); $writer->save($loadedSheetName.'.csv'); }
Возможно, вы можете начать чтение XLS, используя PHP .
Затем, используя основную логику, выведите то, что вы хотите (csv в вашем случае).
Хорошоудачи,
Вы можете использовать библиотеку php PHPExcel , чтобы прочитать файл Excel, просто зациклить строки и ячейки и просто записать данные в файл CSV?