Inhaltsverzeichnis:
Video: Webcrawler #02 - HTML Elemente richtig auslesen 2024
Wenn Sie mit abgegrenzten Daten arbeiten, ist PHP für HTML5 und CSS3 programmierbar. Sie können die CSV-Daten selbst einlesen. Es ist nicht schwer zu machen. Schauen Sie sich den folgenden Code für readContactCSV an. php:
lesenKontaktCSV. phpKontakte
php print <<< hERE
Erste | Letzte | Telefon | |
---|---|---|---|
$ fName | $ lName | $ phone |
In diesem Programm wurde der Inhalt einer CSV-Datei gelesen und in einer HTML-Tabelle angezeigt. Es ist nicht ganz anders als jede andere Textdatei zu lesen, aber es gibt einige neue Wendungen.
-
Drucken Sie die Tabellenüberschrift.
Am einfachsten ist es, die Tabellenüberschrift mit den Feldnamen manuell auszudrucken. Eine einfache Heredoc erledigt die Arbeit.
print <<< hERE
Erste Letzte E-Mail Telefon Laden Sie die Daten in ein Array.
PHP hat ein wunderbares Werkzeug namens Datei. Diese Funktion verwendet einen Dateinamen als einzige Eingabe. Es öffnet dann diese Datei und platziert den gesamten Inhalt in ein Array, wobei jede Zeile in einem eigenen Element des Arrays platziert wird. Es ist nicht erforderlich, einen Dateizeiger zu erstellen oder die Datei zu öffnen oder zu schließen. In diesem Beispiel die Inhalte von Kontakten. csv werden in ein Array namens $ data geladen.
$ data = Datei ("Kontakte. Csv");
Verwenden Sie eine foreach-Schleife, um den Inhalt zu durchlaufen.
Jetzt können Sie mit einer einfachen foreach-Schleife durch den Inhalt der Datei gehen. Die aktuelle Zeile wird in eine Variable namens $ line eingefügt.
foreach ($ data as $ line) {
Explode jede Zeile in ein eigenes Array.
Sie müssen eine Funktion mit einem gewalttätigen Namen lieben, besonders wenn sie wirklich nützlich ist. Verwenden Sie den Befehl explode, um die Zeile in ihre Bestandteile aufzuteilen.
$ lineArray = explode ("t", $ line);
Verwenden Sie die Funktion list (), um jedes Element des Arrays in einer eigenen Variablen zu speichern.
Sie können das Array einfach verwenden, aber es ist einfacher, die Daten an dieselben Variablennamen zurückzuleiten, die Sie beim Erstellen des Programms verwendet haben. Das List () - Konstrukt tut genau das. Geben Sie ihm mehrere Variablennamen und ordnen Sie ihm ein Array zu. Jetzt wird jedes Element des Arrays der entsprechenden Variablen zugewiesen.
Liste ($ fName, $ lName, $ email, $ phone) = $ lineArray;
Gibt die Variablen in einer HTML-Tabellenzeile aus.
Alle Variablen passen gut in eine HTML-Tabelle, also drucken Sie einfach die aktuelle Zeile der Tabelle aus.
print <<< hERE
$ fName $ lName $ email $ phone Räumen Sie Ihre Spielsachen auf.
Es gibt eine kleine Hauswirtschaft zu erledigen. Beenden Sie die Schleife und schließen Sie die HTML-Tabelle. Die Datei muss nicht geschlossen werden, da dies automatisch von der Funktion file () erledigt wurde.
} // end foreach // drucke das Ende der Tabelle print "
Diese Shortcuts - die Funktion file () und list () - erleichtern das Arbeiten mit CSV-Daten. Das ist einer der Gründe, warum diese Art von Daten für grundlegende Datenprobleme beliebt ist.
Das Konstrukt list () arbeitet nur mit numerisch indizierten Arrays und geht davon aus, dass der Array-Index bei 0 beginnt. Wenn Sie die Funktion list () mit assoziativen Arrays verwenden möchten, umgeben Sie die Array-Variable mit der Funktion array_values (). Technisch gesehen ist list () keine Funktion, sondern ein Sprachkonstrukt.
Die Funktion file () ist ansprechend, aber nicht für jede Situation geeignet. Es ist großartig, solange die Dateigröße relativ klein ist, aber wenn Sie versuchen, in eine sehr große Datei zu laden, werden Sie auf Speicherbeschränkungen stoßen. Der Ansatz "Linie auf einmal", der in readContact verwendet wird. Php hat dieses Problem nicht, weil zu einem bestimmten Zeitpunkt nur eine kleine Datenmenge im Speicher ist.
HTML-Puristen neigen dazu, auszuflippen, wenn sie eine HTML-Tabelle sehen. Es ist wahr, dass HTML-Tabellen einst als Layout-Technik fürchterlich missbraucht wurden, aber das bedeutet nicht, dass sie niemals verwendet werden sollten.