Heim  >  Artikel  >  Backend-Entwicklung  >  So suchen Sie mit PHP effizient nach Zeichenfolgen in Dateien

So suchen Sie mit PHP effizient nach Zeichenfolgen in Dateien

Susan Sarandon
Susan SarandonOriginal
2024-10-23 16:36:02458Durchsuche

How to Efficiently Search for Strings in Files with PHP

Strings in Dateien mit PHP finden

Bei der Webentwicklung ist es oft notwendig zu überprüfen, ob ein bestimmter String in einer Datei vorhanden ist. Dieser Artikel zeigt eine Methode zum Ausführen dieser Aufgabe in PHP.

Problemstellung

Der folgende PHP-Code versucht zu überprüfen, ob eine Datei eine an die Seite gesendete Zeichenfolge enthält eine GET-Anfrage. Es werden jedoch falsche Ergebnisse zurückgegeben:

<code class="php">    // ...
    while (($buffer = fgets($handle)) !== false) {
        if (strpos($buffer, $id) === false)
            $valid = TRUE;
    }
    // ...</code>

Lösung 1: file_get_contents()

Ein effizienterer Ansatz ist die Verwendung der Funktion file_get_contents(), die die Datei lädt gesamte Datei in den Speicher:

<code class="php">    if( strpos(file_get_contents("./uuids.txt"),$_GET['id']) !== false) {
        // ...
    }</code>

Lösung 2: exec()

Bei großen Dateien ist es vorzuziehen, exec() zu verwenden, um potenzielle Speicherprobleme zu vermeiden:

<code class="php">    if( exec('grep '.escapeshellarg($_GET['id']).' ./uuids.txt')) {
        // ...
    }</code>

Das obige ist der detaillierte Inhalt vonSo suchen Sie mit PHP effizient nach Zeichenfolgen in Dateien. 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