ホームページ >バックエンド開発 >PHPチュートリアル >PHPでElasticsearchを使用して全文検索を行う方法

PHPでElasticsearchを使用して全文検索を行う方法

WBOY
WBOYオリジナル
2023-07-07 22:31:39714ブラウズ

PHP で Elasticsearch を全文検索に使用する方法

Elasticsearch は、大規模で高速なデータ クエリと分析を処理できる、オープンソースの高性能検索エンジンおよび分散データ ストレージ システムです。 PHP で Elasticsearch を全文検索に使用すると、検索リクエストをより効率的に処理できます。この記事では、PHP で Elasticsearch を全文検索に使用する方法と、対応するコード例を示します。

  1. Elasticsearch のインストールと構成

まず、Elasticsearch をインストールし、関連する構成を実行する必要があります。具体的なインストール方法については、Elasticsearchの公式ドキュメントを参照してください。インストールが完了したら、Elasticsearch サービスを開始する必要があります。

  1. Elasticsearch の PHP 拡張機能をインストールする

Elasticsearch を PHP コードで操作するには、Elasticsearch の PHP 拡張機能をインストールする必要があります。 Composer を介して Elasticsearch の PHP 拡張機能をインストールできます。コマンドは次のとおりです:

composer require elasticsearch/elasticsearch

インストールが完了したら、Elasticsearch の PHP 拡張機能を PHP コードに導入する必要があります:

require 'vendor/autoload.php';
  1. Elasticsearch サーバーに接続する

Elasticsearch PHP 拡張機能を使用する前に、まず Elasticsearch サーバーに接続する必要があります。サンプル コードは次のとおりです。

$client = ElasticsearchClientBuilder::create()->build();
  1. インデックスの作成

Elasticsearch を全文検索に使用する前に、最初にインデックスを作成する必要があります。インデックスは、Elasticsearch がドキュメントの保存とインデックス付けに使用する場所です。インデックスを作成するサンプル コードを次に示します。

$params = [
    'index' => 'my_index',
    'body' => [
        'settings' => [
            'number_of_shards' => 2,
            'number_of_replicas' => 0,
        ]
    ]
];

$response = $client->indices()->create($params);
  1. ドキュメントの追加

インデックスを作成した後、インデックスにドキュメントを追加できます。ドキュメントは全文検索を実行するために必要なデータです。サンプル コードは次のとおりです。

$params = [
    'index' => 'my_index',
    'body' => [
        'title' => 'Elasticsearch入门',
        'content' => 'Elasticsearch是一款高性能的搜索引擎',
    ]
];

$response = $client->index($params);
  1. 全文検索の実行

ドキュメントをインデックスに追加した後、Elasticsearch を使用して全文検索を実行できます。サンプル コードは次のとおりです。

$params = [
    'index' => 'my_index',
    'body' => [
        'query' => [
            'match' => [
                'content' => '搜索引擎',
            ],
        ],
    ],
];

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

上記のコードは、キーワード「検索エンジン」を含むドキュメントを返します。

上記の手順により、PHP の Elasticsearch を全文検索に使用できるようになります。これにより、検索リクエストの処理効率と精度が大幅に向上します。この記事がお役に立てば幸いです!

以上がPHPでElasticsearchを使用して全文検索を行う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。