Heim  >  Artikel  >  Backend-Entwicklung  >  Wie finde und rufe ich mit PHP eine ganze Zeile mit bestimmten Daten aus einer Textdatei ab?

Wie finde und rufe ich mit PHP eine ganze Zeile mit bestimmten Daten aus einer Textdatei ab?

Linda Hamilton
Linda HamiltonOriginal
2024-11-19 22:52:02826Durchsuche

How to Find and Retrieve an Entire Line Containing Specific Data from a Text File Using PHP?

Suchen und Abrufen ganzer Zeilen aus einer Textdatei in PHP

In diesem Szenario möchten Sie ein PHP-Skript erstellen, das eine bestimmte identifiziert Daten in einer Textdatei („numorder.txt“) und gibt die vollständige Zeile mit diesen Daten aus. Konkret möchten Sie nach „aullah1“ suchen und die entsprechende Zeile anzeigen, die als „2 aullah1“ erscheinen sollte.

Um dies zu erreichen, befolgen Sie diese Schritte:

  1. Öffnen Sie die Textdatei: Verwenden Sie file_get_contents(), um sicherzustellen, dass auf die Datei zugegriffen und sie gelesen werden kann.
  2. Bereiten Sie das Suchmuster vor: Escape-Sonderzeichen in der Suchzeichenfolge mit preg_quote (). Erstellen Sie dann mit preg_quote ein reguläres Ausdrucksmuster, um die gesamte Zeile mit dem Suchbegriff abzugleichen.
  3. Nach passenden Zeilen suchen: Verwenden Sie preg_match_all() mit dem vorbereiteten Muster und dem Inhalt des Textes Datei, um alle übereinstimmenden Zeilen abzurufen.
  4. Übereinstimmende Zeile ausgeben: Durchlaufen Sie die Übereinstimmungen und geben Sie die erste Übereinstimmung wieder, die die Zeile mit „aullah1“ darstellt. Das Ergebnis wird als „2 aullah1“ angezeigt.

Hier ist ein Codebeispiel, das diese Schritte demonstriert:

$file = 'numorder.txt';
$searchfor = 'aullah1';

header('Content-Type: text/plain');

$contents = file_get_contents($file);
$pattern = preg_quote($searchfor, '/');
$pattern = "/^.*$pattern.*$/m";

if (preg_match_all($pattern, $contents, $matches)) {
    echo "Found matches:\n";
    echo implode("\n", $matches[0]);
} else {
    echo "No matches found";
}
?>

Dieses Skript durchsucht die Datei „numorder.txt“ nach „ aullah1“ und geben Sie die gesamte Zeile mit diesen Daten aus. Als Ergebnis wird „2 aullah1“ angezeigt.

Das obige ist der detaillierte Inhalt vonWie finde und rufe ich mit PHP eine ganze Zeile mit bestimmten Daten aus einer Textdatei ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn