将XLSX转换为JSON

时间:2015-01-15 20:32:34

标签: php json excel

我正在编写一个脚本,基本上将excel文件转换为JSON。该文件是一个拥有数百条线路的巨额预算。我使用PHPExcel库将xlsx文件转换为csv。然后我将excel文件转换为json,但收到错误:

警告:array_combine():两个参数应具有相同数量的元素

这是我的代码

<?php

ini_set('memory_limit', '1000M');

require_once 'classes/PHPExcel/IOFactory.php';

$excel = PHPExcel_IOFactory::load("sap.xlsx");
$writer = PHPExcel_IOFactory::createWriter($excel, 'CSV');
$writer->setDelimiter(",");
$writer->setEnclosure("");
$writer->setLineEnding("\r\n");
$writer->setSheetIndex(0);
$writer->save("sap.csv");


function getJsonFromCsv($file,$delimiter) { 
    if (($handle = fopen($file, 'r')) === false) {
        die('Error opening file');
    }

    $headers = fgetcsv($handle, 4000, $delimiter);
    $csv2json = array();

    while ($row = fgetcsv($handle, 4000, $delimiter)) {
      $csv2json[] = array_combine($headers, $row);
    }

    fclose($handle);
    return json_encode($csv2json); 
}

$file = 'sap.csv';
echo getJsonFromCsv($file, ',');

我需要做些什么来完成这项工作?或者只是将大型xlsx文件转换为JSON ..

由于

0 个答案:

没有答案