Heim >Backend-Entwicklung >PHP-Tutorial >Ausführliche Erklärung, wie PHP Excel-Tabellen liest und Daten in bestimmten Feldern abfragt
PHP ist eine sehr verbreitete serverseitige Programmiersprache. Während des Entwicklungsprozesses ist es oft notwendig, Daten zu lesen und zu manipulieren. Unter diesen sind Excel-Tabellen eine häufige Datenquelle. Wenn die Daten in Excel-Tabellen in PHP abgefragt und verarbeitet werden können, ist dies für Entwickler sehr praktisch und effizient. In diesem Artikel erfahren Sie, wie Sie mit PHP Excel-Tabellen lesen und Daten in bestimmten Feldern in Excel abfragen.
1. Verwenden Sie PHP zum Lesen von Excel-Tabellen
Es gibt viele vorgefertigte Bibliotheken in PHP, die zum Lesen von Excel-Tabellen verwendet werden können, wie z. B. PHPExcel, PHPSpreadsheet usw. In diesem Artikel verwenden wir PHPSpreadsheet zum Lesen von Excel-Tabellen.
Zuerst müssen Sie die PHPSpreadsheet-Bibliothek herunterladen und installieren. Die Bibliothek kann auf Github heruntergeladen oder mit Composer installiert werden. Nachdem der Download abgeschlossen ist, entpacken Sie die Datei und legen Sie den Phpspreadsheet-Ordner im Stammverzeichnis des PHP-Projekts ab.
Bevor Sie PhpSpreadsheet zum Lesen einer Excel-Tabelle verwenden, müssen Sie die Tabelle zuerst importieren. Sie können die von PhpSpreadsheet bereitgestellte Lademethode in der IOFactory verwenden, um die Excel-Tabelle zu importieren. Der Code lautet wie folgt:
use PhpOffice\PhpSpreadsheet\IOFactory; $spreadsheet = IOFactory::load('file.xlsx');
Nach dem Importieren der Excel-Tabelle können Sie die Daten abrufen die von PHPSpreadsheet bereitgestellten Methoden. Sie können beispielsweise alle Daten in der Tabelle über den folgenden Code abrufen:
$sheet = $spreadsheet->getActiveSheet(); $dataArray = $sheet->toArray();
Das $sheet stellt hier ein Arbeitsblatt in der Excel-Tabelle dar. Verwenden Sie die toArray-Methode, um alle Daten im Arbeitsblatt in ein zweidimensionales Array umzuwandeln . Dieses $dataArray enthält alle Daten in der Excel-Tabelle, die wir importiert haben.
2. Fragen Sie die Daten bestimmter Felder in Excel ab
Nachdem Sie alle Daten in der Excel-Tabelle gelesen haben, können Sie die Daten abfragen. Angenommen, wir müssen Daten in einem bestimmten Feld abfragen. Wir haben beispielsweise eine Schülerinformationstabelle mit Feldern wie „Name“, „Geschlecht“ und „Alter“. Wir müssen nun die Informationen aller Mädchen abfragen.
Zuerst müssen Sie den Feldnamen in der Tabelle abrufen, der die Kopfzeile darstellt. Sie können die erste Datenzeile über den folgenden Code abrufen:
$header = $dataArray[0];
Dann können Sie die Daten filtern. Je nach Feld, das abgefragt werden muss, z. B. Geschlecht, können Sie den folgenden Code verwenden, um die Daten der Geschlechtsfeldspalte abzurufen:
$sexCol = array_search('性别', $header); $sexData = array_column($dataArray, $sexCol);
Die Funktion array_search wird hier verwendet, um den Feldnamen zu finden und die Position zu ermitteln Feld im Array. Verwenden Sie als Nächstes die Funktion array_column, um die entsprechenden Spaltendaten dieses Felds im gesamten Excel-Tabellenarray abzurufen.
Wenn Sie die Informationen aller Mädchen abfragen müssen, können Sie dies mit dem folgenden Code erreichen:
$girlData = array(); for ($i = 1; $i < sizeof($dataArray); $i++) { if ($sexData[$i] === '女') { $girlData[] = $dataArray[$i]; } }
Hier wird durch Durchlaufen aller Datenzeilen anhand des Geschlechtsfelds beurteilt, ob die Zeile Mädcheninformationen enthält Daher wird die Datenzeile im Array $girlData gespeichert.
3. Zusammenfassung
In diesem Artikel haben wir gelernt, wie man Excel-Tabellen in PHP liest und Datenabfragen für bestimmte Felder mithilfe der PHPSpreadsheet-Bibliothek implementiert. Wenn Sie während der tatsächlichen Entwicklung auf das Problem beim Lesen und Abfragen von Excel-Tabellendaten stoßen, können Sie die in diesem Artikel vorgestellte Methode verwenden, um effiziente und bequeme Datenoperationen zu erzielen.
Das obige ist der detaillierte Inhalt vonAusführliche Erklärung, wie PHP Excel-Tabellen liest und Daten in bestimmten Feldern abfragt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!