現在の位置: ホーム> 最新記事一覧> PHPとXunsearchを使用して、効率的なリアルタイム検索と自動インデックスアップデートを実現する

PHPとXunsearchを使用して、効率的なリアルタイム検索と自動インデックスアップデートを実現する

M66 2025-06-21

導入:

Webサイトまたはアプリケーションを開発する際には、検索機能は重要なコアコンポーネントです。ただし、従来のデータベース検索方法はしばしば非効率的であり、リアルタイム検索のニーズを満たすことができません。効率的なフルテキスト検索エンジンとして、Xunsearchはそのような問題を解決するのに特に適しています。中国語の単語セグメンテーションをサポートし、迅速に検索する機能を備えています。この記事では、PHPとXunsearchを組み合わせてリアルタイム検索および自動インデックス更新機能を実現する方法を紹介します。

1。環境準備

開始する前に、次の環境を準備する必要があります。
  • PHP環境(バージョン5.4以降)

  • Xunsearch Search Engine Server(ダウンロードしてインストールしてください)

2. XunSearchをインストールします

1.ダウンロードしたXunsearch Server圧縮パッケージを解凍します。 2.サーバーディレクトリを入力し、 `。/xunsearchd`コマンドを実行してxunsearchサーバーを起動します。

3.インデックスと検索の例を設定します

まず、「search.php」という名前のphpファイルを作成します。

Xunsearchのクラスライブラリの紹介:

require_once '/path/to/sdk/php/lib/xs.php';

xunsearchオブジェクトを作成し、インデックスパスを指定します。

$ xs = new xs( '/path/to/xunsearch/app.ini');

検索オブジェクトを作成し、検索するフィールドを設定します。

$ search = $ xs-> search;
$ search-> setFuzzy();
$ search-> setLimit(10);
$ search-> setScwsmulti(3);
$ search-> addweight( 'title'、10);
$ search-> addweight( 'content'、5);

検索を開始します:

$ keyword = $ _get ['q'];
$ result = $ search-> search($ keyword);

ループ出力検索結果:

foreach($ result as $ item){
    echo $ item->タイトル。 &#39;<br> &#39;;
    echo $ item-> content。 &#39;<br><br> &#39;;
}

4.インデックスを自動的に更新します

`update.php`という名前のphpファイルを作成します。

Xunsearchクラスライブラリの紹介:

require_once &#39;/path/to/sdk/php/lib/xs.php&#39;;

xunsearchオブジェクトを作成し、インデックスパスを指定します。

$ xs = new xs( &#39;/path/to/xunsearch/app.ini&#39;);

インデックスオブジェクトを作成します。

$ index = $ xs-> index;

更新する必要があるデータを取得します(データがMySQLデータベースから来ていると仮定します):

$ pdo = new PDO( &#39;mysql:host = localhost; dbname = test&#39;、 &#39;username&#39;、 &#39;password&#39;);
$ pdo-> setattribute(pdo :: attr_errmode、pdo :: errmode_exception);
$ stmt = $ pdo-> prepare( &#39;select * from article&#39;);
$ stmt-> execute();
$ data = $ stmt-> fetchall(pdo :: fetch_assoc);

ループ更新インデックス:

foreach($ data as $ item){
    $ doc = new xsdocument();
    $ doc-> setfields($ item);
    $ index->​​ update($ doc);
}

インデックスを保存して閉じます:

$ index->​​ flushindex();

結論は:

この記事の導入を通じて、PHPとXunSearchの組み合わせを使用して効率的なリアルタイム検索機能を実現し、インデックスを自動的に更新することで検索結果がタイムリーかつ正確であることを確認しました。 Xunsearchの強力な機能により、Webサイトまたはアプリで検索エクスペリエンスをすばやく統合および最適化できます。