Heim > Backend-Entwicklung > PHP-Tutorial > Entwickeln Sie Suchvorschlagsfunktionen mit PHP und Manticore Search

Entwickeln Sie Suchvorschlagsfunktionen mit PHP und Manticore Search

王林
Freigeben: 2023-08-05 13:42:01
Original
1582 Leute haben es durchsucht

Entwickeln Sie Suchvorschlagsfunktionen mit PHP und Manticore Search

In modernen Websites und Anwendungen ist die Suchfunktion eine sehr wichtige Komponente. Um die Benutzererfahrung zu verbessern, werden häufig Suchvorschlagsfunktionen verwendet. Die Suchvorschlagsfunktion kann relevante Suchvorschläge und eine automatische Vervollständigung basierend auf den vom Benutzer eingegebenen Schlüsselwörtern bereitstellen. In diesem Artikel entwickeln wir eine einfache Suchvorschlagsfunktion mit PHP und Manticore Search.

Manticore Search ist eine neu geschriebene Version, die auf der Open-Source-Suchmaschine Sphinx basiert und eine höhere Leistung und umfangreichere Funktionen bietet. Es unterstützt Funktionen wie Volltextsuche, Echtzeitindizierung und Geolokalisierungssuche. Wir werden Manticore Search verwenden, um eine schnelle und effiziente Suchvorschlagsfunktion zu erstellen.

Zuerst müssen wir Manticore Search auf dem Server installieren. Es kann mit dem folgenden Befehl installiert werden:

$ sudo apt-get update
$ sudo apt-get install manticoresearch
Nach dem Login kopieren

Nachdem die Installation abgeschlossen ist, müssen wir einen Index erstellen, um unsere Suchdaten zu speichern. In Manticore Search ist ein Index eine Sammlung von Dokumenten, die jeweils ein oder mehrere Felder enthalten. Mit dem folgenden Befehl können wir einen Index namens „Vorschläge“ erstellen:

$ mysql -P 9306
mysql> CREATE TABLE suggestions(title TEXT, suggestion BIGINT) INDEX title;
mysql> quit
Nach dem Login kopieren

Als nächstes können wir PHP verwenden, um mit Manticore Search zu interagieren. Zuerst müssen wir das Paket manticoresearch/manticoresearch installieren. Die Installation kann über Composer abgeschlossen werden: manticoresearch/manticoresearch包。可以通过Composer来完成安装:

$ composer require manticoresearch/manticoresearch
Nach dem Login kopieren

安装完成后,我们可以编写PHP代码来实现搜索建议功能。首先,我们需要建立与Manticore Search的连接:

<?php
require 'vendor/autoload.php';

use ManticoresearchClient;

$client = new Client();
$client->connect();
Nach dem Login kopieren

然后,我们可以编写一个函数来获取搜索建议。该函数将根据用户输入的关键词,在Manticore Search中执行搜索查询,并返回相关的搜索建议:

function getSuggestions($client, $query) {
    $params = [
        'index' => 'suggestions',
        'body' => [
            'query' => [
                'match' => [
                    'title' => [
                        'query' => $query,
                        'operator' => 'and'
                    ]
                ]
            ],
            'suggest' => [
                'suggestion' => [
                    'prefix' => $query,
                    'completion' => [
                        'field' => 'suggestion'
                    ]
                ]
            ]
        ]
    ];

    $response = $client->search($params);

    $suggestions = [];
    foreach ($response['suggest']['suggestion'][0]['options'] as $option) {
        $suggestions[] = $option['text'];
    }

    return $suggestions;
}
Nach dem Login kopieren

最后,我们可以编写一个简单的代码来测试搜索建议功能:

$query = $_GET['q'];

if ($query) {
    $suggestions = getSuggestions($client, $query);

    foreach ($suggestions as $suggestion) {
        echo $suggestion . "<br>";
    }
}
Nach dem Login kopieren

在上面的示例中,我们使用$_GET['q']来获取用户在搜索框中输入的关键词。然后,我们调用getSuggestionsrrreee

Nach Abschluss der Installation können wir PHP-Code schreiben, um die Suchvorschlagsfunktion zu implementieren. Zuerst müssen wir eine Verbindung zu Manticore Search herstellen:

rrreee

Dann können wir eine Funktion schreiben, um Suchvorschläge zu erhalten. Diese Funktion führt eine Suchabfrage in Manticore Search basierend auf den vom Benutzer eingegebenen Schlüsselwörtern aus und gibt relevante Suchvorschläge zurück:

rrreee

Schließlich können wir einen einfachen Code schreiben, um die Suchvorschlagsfunktionalität zu testen: 🎜rrreee🎜 Im obigen Beispiel: Wir verwenden $_GET['q'], um die vom Benutzer in das Suchfeld eingegebenen Schlüsselwörter abzurufen. Anschließend rufen wir die Funktion getSuggestions auf, um relevante Suchvorschläge abzurufen und diese auf der Seite anzuzeigen. 🎜🎜Zusammenfassung🎜🎜Durch die Verwendung von PHP und Manticore Search können wir ganz einfach eine schnelle und effiziente Suchvorschlagsfunktion entwickeln. Manticore Search bietet leistungsstarke Volltextsuche und automatische Vervollständigungsfunktionen, sodass wir ein großartiges Sucherlebnis innerhalb der Anwendung bieten können. Ich hoffe, dieser Artikel wird Ihnen dabei helfen, Manticore Search zu erlernen und zu verwenden, um Suchvorschläge zu entwickeln! 🎜

Das obige ist der detaillierte Inhalt vonEntwickeln Sie Suchvorschlagsfunktionen mit PHP und Manticore Search. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage