fiftythr Ответов: 0

Конвертируйте XLS в CSV с помощью PHPEXCEL lib, но без переноса пустых строк в CSV-файл


Следующий код преобразует каждый лист XLS-файла в CSV-файл. Но я не могу найти способ остановить его от включения пустых строк из XLS в CSV.

Пожалуйста, помогите мне.

   function convertXLStoCSV($infile, $outfile) // the function that converts the file
{
    $fileType = PHPExcel_IOFactory::identify($infile);
    $objReader = PHPExcel_IOFactory::createReader($fileType);
    $objReader->setReadDataOnly(true);
    $objPHPExcel = $objReader->load($infile);

    $writer = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV');
    $writer->setDelimiter(",");
    $writer->setEnclosure("");
    foreach ($objPHPExcel->getWorksheetIterator() as $workSheetIndex => $worksheet) 
    {
        $objPHPExcel->setActiveSheetIndex($workSheetIndex);
        $writer->setSheetIndex($workSheetIndex);
        $writer->save('converted/' . $outfile ."_" . $worksheet->getTitle() . ".csv");


        echo $outfile;
        echo $infile;
    }
}


Что я уже пробовал:

Создание отдельного скрипта, который не использует PHPExcel lib, вместо этого он использует FGETCSV для чтения CSV-файла, удаления пустых строк и последующего сохранения файла снова, но это не сработало, кроме того, это добавило бы много стресса на сервер, так как я собираюсь работать с тысячами CSV-файлов, содержащих тысячи строк.

0 Ответов