如何使用PHP从Excel电子表格中的某些列读取所有单元格?

时间:2020-10-26 06:18:16

标签: php excel phpspreadsheet

我有一个这样的Excel电子表格: enter image description here

以下代码:

sourceList = sourceList
     .ToList()
     .Where(c =>
         properties.Any(p => p.GetValue(c) != null && p.GetValue(c).ToString()
              .IndexOf(query, StringComparison.InvariantCultureIgnoreCase) >= 0 ))
     .AsQueryable();

打印所有的整个单元格,如下所示:

<?php

require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

$reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
$spreadsheet = $reader->load("emp.xlsx");
$worksheet = $spreadsheet->getActiveSheet();

foreach ($worksheet->getRowIterator() as $row) {
    $cellIterator = $row->getCellIterator();
    $cellIterator->setIterateOnlyExistingCells(FALSE); 
    foreach ($cellIterator as $cell) {
             $cell->getValue() . PHP_EOL;
    }
    echo PHP_EOL;
}
echo PHP_EOL;


?>

我只对电子邮件部门对感兴趣,这对返回的内容如下:

ID
Name
Email
Department

1341366
Jack Stevens
jstev@foo.net
IT

3400569
Linus Pauling
linus@foo.net
Finance

8719274
Clive Muller
clivem@foo.net
Legal

7162005
Josh Brown
josh.brownfoo@foo.net
Marketing

2049619
Michael Lee
mlee78@foo.net
Legal

如何做到?

0 个答案:

没有答案