Die Suchfunktionalität ist in modernen Webanwendungen unverzichtbar, insbesondere wenn sie mit großen Datenmengen und hohen gleichzeitigen Abfragen konfrontiert sind. Herkömmliche Datenbank-Abfragemethoden können diese Anforderungen normalerweise nicht erfüllen, und Elasticsearch als leistungsstarke verteilte Suchmaschine kann große Daten effizient verarbeiten und die Nahverkehrssuche unterstützen.
Zunächst müssen Sie Elasticsearch auf dem Server installieren. Sie können auf die offizielle Website zugreifen, um die neueste Version des Installationspakets herunterzuladen und sie gemäß den entsprechenden Dokumenten zu installieren und zu konfigurieren.
Verwenden Sie als nächstes den Komponisten, um die Elasticsearch -Client -Bibliothek von PHP zu installieren. Führen Sie den folgenden Befehl aus, um zu installieren:
Der Komponist benötigt Elasticsearch/ElasticSearch
Im PHP -Code müssen Sie zunächst eine Instanz des Elasticsearch -Clients erstellen und eine Verbindung zum Elasticsearch -Server herstellen. Hier ist ein Beispielcode:
erfordern 'Anbieter/autoload.php'; $ client = elasticsearchClientBuilder :: create ()-> build ();
Vor der Suche müssen Sie Indizes und Zuordnungen erstellen. In Elasticsearch entsprechen Indizes den Tabellen in der Datenbank, während Karten die Struktur der Daten definieren. Hier ist ein Beispiel für das Erstellen eines Index und das Definieren einer Zuordnung:
$ params = [ 'Index' => 'my_index', 'Körper' => [ 'Mappings' => [ 'Eigenschaften' => [ 'title' => ['type' => 'text'], 'Inhalt' => ['Typ' => 'text'] ] ] ] ]; $ response = $ client-> indices ()-> create ($ params);
Der obige Code erstellt einen Index namens "my_index" und definiert eine Zuordnung von Texttypen für die Felder "Titel" und "Inhalt". Sie können Felder und Datentypen entsprechend Ihren Anforderungen anpassen.
Als nächstes müssen Sie die Daten zum Index hinzufügen. Der folgende Code zeigt, wie ein Dokument mit den Feldern "Titel" und "Inhalt" zum Index hinzugefügt wird:
$ params = [ 'Index' => 'my_index', 'Körper' => [ 'title' => 'Beispieltitel', 'Inhalt' => 'Beispielinhalt' ] ]; $ response = $ client-> index ($ params);
Dieser Code fügt ein Dokument hinzu, das die Felder "Titel" und "Inhalt" zum Index "my_index" enthält, und Sie können nach Bedarf weitere Felder hinzufügen.
Sobald die Daten hinzugefügt wurden, können Sie eine Suchabfrage erstellen, um die Daten abzurufen. Hier ist ein einfaches Beispiel für Suchanfragen:
$ params = [ 'Index' => 'my_index', 'Körper' => [ 'query' => [ 'Match' => [ 'title' => 'Beispiel' ' ] ] ] ]; $ response = $ client-> such ($ params); <p>foreach ($ response ['hits'] ['hits'] als $ hit) {<br> echo $ hit ['_ Source'] ['Titel']. "\N";<br> }<br>
Dieser Code erstellt eine Match -Abfrage für das Feld "Titel" und gibt den Matching -Dokumenttitel aus.
Durch die Kombination von PHP und Elasticsearch können Sie schnell und effiziente Suchfunktionen der Nahverwaltung. Dieser Artikel beschreibt den vollständigen Vorgang aus der Installation und Konfiguration von Elasticsearch mit der Verbindung von Elasticsearch, dem Erstellen von Indizes, dem Hinzufügen von Dokumenten und der Durchführung von Suchvorgängen. Ich hoffe, dieser Artikel kann Ihnen helfen, besser zu verstehen, wie Sie Elasticsearch in Webanwendungen integrieren und ein reibungsloses Sucherlebnis erzielen.