Я только начал использовать PhpSpreadsheet, и с помощью следующего кода я смог отобразить весь лист, когда нажал кнопку отправки. Похоже, я не могу понять, как просто искать строку из поля ввода и отображать только те строки, которые содержат строку поиска.
<form action="search.php" method="post">
<div class="read_Search">
<fieldset class="queryFieldset">
<legend style="color:white;">TOOLS:</legend>
<div class="input-group mb-3">
<a href="https://test.tool/search.php"><button type="button" class="btn btn-primary">Reset Form</button></a>
</div>
</fieldset>
<fieldset class="queryFieldset">
<legend style="color:white;">Search Query:</legend>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon1">Search</span>
</div>
<input type="text" name="search" class="form-control" placeholder="Enter Search Term" aria-label="Search Query" aria-describedby="basic-addon1">
<input type="submit" name="submitSearch" value="Submit" class="btn btn-primary">
</div>
</fieldset>
</div>
</form>
<?php
if (isset($_POST['submitSearch'])) {
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader('Xlsx');
$reader->setReadDataOnly(TRUE);
$spreadsheet = $reader->load("includes/data/currentSearchdata.xlsx");
$worksheet = $spreadsheet->getActiveSheet();
echo '<div class="container searchcontainer"><table>' . PHP_EOL;
foreach ($worksheet->getRowIterator() as $row) {
echo '<tr>' . PHP_EOL;
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(FALSE); // This loops through all cells,
// even if a cell value is not set.
// By default, only cells that have a value
// set will be iterated.
foreach ($cellIterator as $cell) {
echo '<td>' .
$cell->getValue() .
'</td>' . PHP_EOL;
}
echo '</tr>' . PHP_EOL;
}
echo '</table></div>' . PHP_EOL;
} else { }
?>
</div>