2016-06-10 13 views
0

Also versuche ich nach bestimmten Wörtern/Werten in einer Textdatei zu suchen.In-case-sensitive PHP-Suche?

Derzeit kann ich nur Groß- und Kleinschreibung suchen.

Hier ist mein Code:

<html> 
 
<?php 
 
\t //$searchthis = "ignore this"; 
 
\t $matches = array(); 
 
\t $FileW = fopen('result.txt', 'w'); 
 
\t $handle = @fopen("textfile.txt", "r"); 
 
\t ini_set('memory_limit', '-1'); 
 
\t if ($handle) 
 
\t { 
 
\t \t while (!feof($handle)) 
 
\t \t { 
 
\t \t \t $buffer = fgets($handle); 
 
\t \t \t if(strpos($buffer, $_POST["search"]) != FALSE) 
 
\t \t \t \t $matches[] = $buffer; 
 
\t \t } 
 
\t \t fwrite($FileW, print_r($matches, TRUE)); 
 
\t \t fclose($handle); 
 
\t } 
 
\t print 'Found Possible Matches, here are the results' ."\n"; 
 
\t sleep(2); 
 
\t //show results: 
 
\t sleep(10); 
 
?> 
 
\t </br> 
 
<?php 
 
    $file = "result.txt"; 
 
    $text = file_get_contents($file); 
 
    $text = nl2br($text); 
 

 

 

 
    echo $text; 
 
?> 
 

 
</html>

Also, anstatt dies zu tun: für die Suche

Abfrage: casesensiTiveworD Ergebnis: Nichts

, wenn ein Wert gibt es in textfile.txt das ist "casesensitiveword"

Ich will es, dies zu tun:

Abfrage für die Suche: casesensiTiveworD

Ergebnis: Casesensitiveword

Aber ich weiß nicht, wie dies zu tun, würde ich jede Hilfe dankbar, ich Ich habe schon seit Stunden versucht, das herauszufinden, und das kann ich nicht.

+0

Verwenden [stripos] (http: //php.net/manual/en/function.stripos.php) – Thamilan

Antwort

1

Ersetzen Sie die folgende Zeile ...

if(strpos($buffer, $_POST["search"]) != FALSE) 

mit diesem ..

if(stripos($buffer, $_POST["search"]) !== FALSE) 

Funktion 'stripos' ignoriert Groß- und Kleinschreibung Kontrolle

+0

vielen Dank! Ich konnte das nirgendwo in der Dokumentation finden. – Ryan

+0

@Ryan warum nicht? Sie haben nicht gesucht .. sein [hier] (http://php.net/manual/en/function.stripos.php) – Thamilan