Heim >Backend-Entwicklung >PHP-Tutorial >Wie suche und zeige ich mit PHP Zeilen an, die eine bestimmte Zeichenfolge in einer Textdatei enthalten?

Wie suche und zeige ich mit PHP Zeilen an, die eine bestimmte Zeichenfolge in einer Textdatei enthalten?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-21 01:51:10274Durchsuche

How to Search and Display Lines Containing a Specific String in a Text File Using PHP?

PHP-Skript zum Suchen und Anzeigen der gesamten Zeile, die eine bestimmte Zeichenfolge aus einer Textdatei enthält

Zum Erstellen eines PHP-Skripts, das die gesamte Zeile sucht und anzeigt Führen Sie die folgenden Schritte aus, um eine Zeile mit einer bestimmten Zeichenfolge aus einer Textdatei anzuzeigen:

  1. Öffnen Sie die Textdatei: Verwenden Sie die Funktion file_get_contents(), um den Inhalt der Textdatei in eine Variable einzulesen .
  2. Sonderzeichen maskieren: Verwenden Sie die Funktion preg_quote(), um alle Sonderzeichen in der Suchzeichenfolge zu maskieren, um unerwartete Ergebnisse zu verhindern.
  3. Regulären Ausdruck erstellen: Formulieren Sie einen regulären Ausdruck, der mit der gesamten Zeile übereinstimmt, die die Suchzeichenfolge enthält. Verwenden Sie das folgende Muster: „/^.*$pattern.*$/m“. Dadurch wird sichergestellt, dass die Suchzeichenfolge an einer beliebigen Stelle in der Zeile angezeigt werden kann.
  4. Suche durchführen: Verwenden Sie die Funktion preg_match_all(), um den Inhalt der Textdatei nach allen Vorkommen des regulären Ausdrucks zu durchsuchen. Die übereinstimmenden Zeilen werden in einem Array gespeichert.
  5. Ergebnisse anzeigen: Über die Übereinstimmungen iterieren und jede gesamte Zeile anzeigen.
  6. Keine Übereinstimmungen behandeln: Wenn die Suchzeichenfolge nicht gefunden wird, geben Sie eine entsprechende Meldung aus, die auf das Fehlen von Übereinstimmungen hinweist.

Hier ist ein PHP-Skript, das die oben genannten Schritte implementiert:

<?php
$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";
}
?>

Das obige ist der detaillierte Inhalt vonWie suche und zeige ich mit PHP Zeilen an, die eine bestimmte Zeichenfolge in einer Textdatei enthalten?. 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