La fonctionnalité de recherche est indispensable dans les applications Web modernes, en particulier lorsqu'elles sont confrontées à de grandes quantités de données et à des requêtes simultanées élevées. Les méthodes de requête de base de données traditionnelles ne peuvent généralement pas répondre à ces besoins, et Elasticsearch, en tant que puissant moteur de recherche distribué, peut traiter efficacement des données à grande échelle et prendre en charge la recherche à temps proche.
Tout d'abord, vous devez installer Elasticsearch sur le serveur. Vous pouvez accéder au site officiel pour télécharger la dernière version du package d'installation et l'installer et le configurer en fonction des documents pertinents.
Ensuite, utilisez Composer pour installer la bibliothèque client Elasticsearch de PHP. Exécutez la commande suivante pour installer:
Le compositeur nécessite Elasticsearch / Elasticsearch
Dans le code PHP, vous devez d'abord créer une instance du client Elasticsearch et vous connecter au serveur Elasticsearch. Voici un exemple de code:
exiger «fournisseur / autoload.php»; $ client = elasticsearchClientBuilder :: Create () -> build ();
Avant de rechercher, vous devez créer des index et des mappages. Dans Elasticsearch, les index sont équivalents aux tableaux de la base de données, tandis que les cartes définissent la structure des données. Voici un exemple de création d'un index et de définition d'un mappage:
$ params = [ 'index' => 'my_index', 'corps' => [ 'mappings' => [ 'propriétés' => [ 'title' => ['type' => 'text'], 'contenu' => ['type' => 'text'] ]] ]] ]] ]] $ réponse = $ client-> indices () -> create ($ params);
Le code ci-dessus crée un index appelé "my_index" et définit un mappage des types de texte pour les champs "Title" et "Content". Vous pouvez personnaliser les champs et les types de données en fonction de vos besoins.
Ensuite, vous devez ajouter les données à l'index. Le code suivant montre comment ajouter un document contenant les champs "titre" et "Content" à l'index:
$ params = [ 'index' => 'my_index', 'corps' => [ 'title' => 'Exemple de titre', 'contenu' => 'Exemple de contenu' ]] ]] $ réponse = $ client-> index ($ params);
Ce code ajoute un document contenant les champs "Title" et "Content" à l'index "my_index", et vous pouvez ajouter plus de champs au besoin.
Une fois les données ajoutées, vous pouvez créer une requête de recherche pour récupérer les données. Voici un exemple de requête de recherche simple:
$ params = [ 'index' => 'my_index', 'corps' => [ 'query' => [ 'match' => [ 'title' => 'Exemple' ]] ]] ]] ]] $ réponse = $ client-> recherche ($ params); <p>foreach ($ réponse ['hits'] ['hits'] comme $ hit) {<br> echo $ hit ['_ source'] ['title']. "\ n";<br> }<br>
Ce code crée une requête de correspondance pour le champ "Title" et publie le titre du document correspondant.
En combinant PHP et Elasticsearch, vous pouvez rapidement et efficacement des capacités de recherche à temps proche du réel. Cet article décrit le processus complet de l'installation et de la configuration d'ElasticSearch à la connexion Elasticsearch, à la création d'index, à l'ajout de documents et à effectuer des opérations de recherche. J'espère que cet article peut vous aider à mieux comprendre comment intégrer Elasticsearch dans les applications Web et obtenir une expérience de recherche fluide.