Heim  >  Artikel  >  Backend-Entwicklung  >  Entwicklung von Suchverlaufsfunktionen mit PHP und Manticore Search

Entwicklung von Suchverlaufsfunktionen mit PHP und Manticore Search

WBOY
WBOYOriginal
2023-08-05 13:12:31822Durchsuche

Suchverlaufsfunktion mit PHP und Manticore Search entwickeln

Übersicht:
In vielen Anwendungen kann die Suchverlaufsfunktion Benutzern ein komfortables Sucherlebnis bieten. Durch die Aufzeichnung des Suchverlaufs des Benutzers können Benutzer frühere Suchergebnisse schnell auswählen und bei der nächsten Suche zu verwandten Seiten springen. In diesem Artikel wird vorgestellt, wie Sie Suchverlaufsfunktionen mit PHP und Manticore Search entwickeln.

Anforderungen:
Bevor Sie beginnen, müssen Sie sicherstellen, dass PHP und Manticore Search installiert und konfiguriert sind. Wenn Manticore Search nicht installiert ist, können Sie es über die offizielle Dokumentation installieren und konfigurieren.

Implementierungsschritte:

  1. Suchverlaufstabelle erstellen
    Zuerst müssen wir eine Tabelle zum Speichern des Suchverlaufs erstellen. Öffnen Sie die Manticore-Suchkonsole und erstellen Sie das folgende Schema:
index history
{
    source = history
    path = /path/to/your/data/history
    morphology = stem_en
    min_word_len = 1
    html_strip = 1
    stopwords = stopwords_en.txt
    charset_type = utf-8
    enable_star = 1
}

Dadurch wird ein Index namens „Verlauf“ erstellt und definiert, wo der Suchverlauf gespeichert wird, sowie zugehörige Einstellungen.

  1. Frontend-Schnittstelle und Benutzereingaben
    Erstellen Sie ein Suchfeld im Frontend, damit Benutzer Suchbegriffe eingeben können. Senden Sie die vom Benutzer eingegebenen Schlüsselwörter über eine AJAX-Anfrage an das Back-End-PHP-Skript.
  2. PHP-Backend-Verarbeitung
    Nachdem das PHP-Skript die vom Benutzer eingegebenen Suchschlüsselwörter empfangen hat, muss es die folgenden Vorgänge ausführen:
    3.1 Verbindung zu Manticore Search herstellen
    Verwenden Sie die PHP-Clientbibliothek von Manticore Search, um eine Verbindung zum Manticore Search-Server herzustellen. Der Code lautet wie folgt:
require_once 'vendor/autoload.php';
use ManticoresearchClient;
$client = new Client();
$client->connect(['host' => 'localhost', 'port' => 9308]);

Bitte ändern Sie den Host und den Port entsprechend der tatsächlichen Situation.

3.2 Suchverlauf
Verwenden Sie die Suchfunktion von Manticore Search, um in der Suchverlaufstabelle basierend auf den vom Benutzer eingegebenen Schlüsselwörtern zu suchen. Der Code lautet wie folgt:

$response = $client->search([
    'index' => 'history',
    'query' => [
        'match' => ['keyword' => $keyword]
    ],
    'limit' => 10,
]);

Dadurch werden Datensätze in der Suchverlaufstabelle abgeglichen, die das vom Benutzer eingegebene Schlüsselwort enthalten, und es werden bis zu 10 Ergebnisse zurückgegeben.

3.3 Suchverlauf speichern
Speichern Sie als Nächstes die vom Benutzer eingegebenen Schlüsselwörter in der Suchverlaufstabelle. Sie können Code ähnlich dem folgenden verwenden:

$client->insert([
    'index' => 'history',
    'doc' => ['keyword' => $keyword]
]);

Dadurch wird das vom Benutzer eingegebene Schlüsselwort als Dokument in die Suchverlaufstabelle eingefügt.

  1. Das Front-End zeigt den Suchverlauf an.
    Zunächst werden die vom Back-End zurückgegebenen Suchergebnisse im JSON-Format an das Front-End zurückgegeben. Das Frontend kann dann JavaScript verwenden, um die Ergebnisse des Suchverlaufs zu analysieren und anzuzeigen.
$.ajax({
    url: 'search_history.php',
    data: { keyword: keyword },
    type: 'POST',
    dataType: 'json',
    success: function(response) {
        // 解析并展示搜索历史记录结果
    }
});

Zusammenfassend haben wir die Suchverlaufsfunktion mithilfe von PHP und Manticore Search erfolgreich implementiert. Benutzer können Schlüsselwörter eingeben und suchen, und die Suchergebnisse werden in der Suchverlaufstabelle gespeichert. Wenn Benutzer das nächste Mal erneut suchen, können sie schnell vorherige Suchergebnisse auswählen. Auf diese Weise können Benutzer relevante Informationen bequemer finden und das Benutzererlebnis verbessern.

Hinweis: Die Codebeispiele dienen nur als Referenz und müssen möglicherweise entsprechend der tatsächlichen Situation angepasst und optimiert werden. Bitte entwickeln und testen Sie entsprechend Ihren eigenen Anforderungen.

Das obige ist der detaillierte Inhalt vonEntwicklung von Suchverlaufsfunktionen mit PHP und Manticore Search. 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