Код: Выделить всё
class ReadFilter implements \PhpOffice\PhpSpreadsheet\Reader\IReadFilter {
private $startRow = 0;
private $endRow = 0;
private $columns = [];
public function __construct($startRow, $endRow, $columns) {
$this->startRow = $startRow;
$this->endRow = $endRow;
$this->columns = $columns;
}
public function readCell($column, $row, $worksheetName = '') {
if ($row >= $this->startRow && $row endRow) {
if (in_array($column, $this->columns)) {
return true;
}
}
return false;
}
}
Код: Выделить всё
$filterSubset = new ReadFilter(1, 3427, range('A', 'A'));
$inputFileType = 'Xlsx';
$inputFileName = './file_name.xlsx';
$worksheet='Sheet 1';
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader($inputFileType);
$reader->setReadFilter($filterSubset);
$spreadsheet = $reader->load($inputFileName);
$sheetData = $spreadsheet->getSheetByName($worksheet)->toArray();
PHP Неустранимая ошибка: объявление ReadFilter::readCell($column, $row, $worksheetName = '') должен быть совместим с PhpOffice\PhpSpreadsheet\Reader\IReadFilter::readCell(string $columnAddress, int $row, string $worksheetName = ''): bool
< /blockquote>
Php не доволен общедоступной функцией readCell в моем классе ReadFilter. Но ошибка не говорит сама за себя. Кто-нибудь может помочь?
Подробнее здесь: https://stackoverflow.com/questions/781 ... ter-update
Мобильная версия