【问题标题】:Uploading excel files with different headers to database将具有不同标题的excel文件上传到数据库
【发布时间】:2019-06-20 06:27:14
【问题描述】:

我有许多 Excel 文件,其中包含来自不同客户的订单。我的问题是 excel 文件中的标题位于不同的位置。例如,在第一个文件中是 (OrderID, Date, Unit price, Quantity),但在第二个文件中是 (OrderID, Product name, Unit price, Quantity, Date)如何映射字段以便稍后它可以从 excel 表的正确列中获取数据?

【问题讨论】:

    标签: php sql-server excel


    【解决方案1】:

    使用phpSpreadSheet库提取标题行并获取excel内容剩余行的数组。

    require '../vendor/autoload.php';
    use PhpOffice\PhpSpreadsheet\Spreadsheet;
    use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
    
    
    $reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader('Xlsx');
    $reader->setReadDataOnly(TRUE);
    
    $spreadsheet = $reader->load(strip_tags($your_file));
    
    $worksheet = $spreadsheet->getActiveSheet();
    
    $highestRow = $worksheet->getHighestRow(); 
    $highestColumn = $worksheet->getHighestColumn();
    
    $sheetData = $worksheet->rangeToArray(
        'A2:' . $highestColumn . $highestRow,
        NULL,TRUE,FALSE
    );
    
    print_r($sheetData);
    

    【讨论】:

      猜你喜欢
      • 2013-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多