Heim  >  Artikel  >  Backend-Entwicklung  >  Wie filtere ich Array-Werte mit einer SQL-ähnlichen „%search%“-Abfrage in PHP?

Wie filtere ich Array-Werte mit einer SQL-ähnlichen „%search%“-Abfrage in PHP?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-04 02:07:011003Durchsuche

How to Filter Array Values with a SQL-Like

Array-Werte mithilfe einer SQL-ähnlichen „%search%“-Abfrage in PHP filtern

Beim Erstellen eines Autovervollständigungsfelds mit JQueryUI werden bestimmte Werte abgerufen Ergebnisse aus einem Array basierend auf Benutzereingaben können eine Herausforderung sein. Um Array-Werte basierend auf einer partiellen Suchzeichenfolge effektiv zu filtern, ähnlich wie bei der SQL-LIKE-Abfrage „%search%“, ist es wichtig, die Nuancen der Array-Manipulation und regulärer Ausdrücke zu verstehen. Ohne exakte Übereinstimmungen erfordert die Aufgabe einen individuellen Ansatz.

Eine Lösung besteht in der Verwendung der preg_grep-Funktion, die die Verwendung eines regulären Ausdrucks zum Filtern eines Arrays ermöglicht. Indem Sie die Benutzereingabe richtig maskieren und das Trennzeichen ~ verwenden, kann ein regulärer Ausdruck so erstellt werden, dass er mit jeder Zeichenfolge übereinstimmt, die die Suchzeichenfolge an einer beliebigen Stelle darin enthält. Zum Beispiel:

<code class="php">$input = preg_quote('bl', '~'); // escape the input string
$data = array('orange', 'blue', 'green', 'red', 'pink', 'brown', 'black');

$result = preg_grep('~' . $input . '~', $data);</code>

Das resultierende $result-Array enthält alle Elemente aus $data, die an einer beliebigen Stelle in ihrem Wert die Sequenz „bl“ enthalten, wodurch effektiv das Verhalten einer SQL-LIKE-„%search%“-Abfrage nachgebildet wird . Durch die sorgfältige Kombination von Array-Manipulationstechniken und regulären Ausdrücken können Sie Array-Werte auf flexible und effiziente Weise filtern und so das Benutzererlebnis und die Genauigkeit Ihrer Autovervollständigungsfunktion verbessern.

Das obige ist der detaillierte Inhalt vonWie filtere ich Array-Werte mit einer SQL-ähnlichen „%search%“-Abfrage in PHP?. 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