Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Panduan Pembangunan Carian PHP dan Manticore: Penapis Carian Sangat Boleh Disesuaikan

Panduan Pembangunan Carian PHP dan Manticore: Penapis Carian Sangat Boleh Disesuaikan

王林
王林asal
2023-08-05 08:21:141377semak imbas

Panduan Pembangunan Carian PHP dan Manticore: Penapis Carian Sangat Boleh Disesuaikan

Pengenalan:
Dalam aplikasi web moden, fungsi carian adalah bahagian penting. Kualiti fungsi carian secara langsung mempengaruhi pengalaman pengguna tapak web. Untuk mencapai fungsi carian yang cekap, pembangun perlu memilih enjin carian yang sesuai dan menyesuaikannya mengikut keperluan mereka sendiri. Dalam artikel ini, kami akan membincangkan cara membangunkan penapis carian tersuai tinggi menggunakan PHP dan enjin carian Manticore Search.

1. Apakah itu Manticore Search?
Manticore Search ialah enjin carian teks penuh sumber terbuka, percuma dan berprestasi tinggi. Ia berdasarkan enjin carian Sphinx dan menambah banyak ciri dan penambahbaikan baharu, seperti carian teks penuh, pengindeksan teragih, kemas kini indeks masa nyata, dsb. Manticore Search menyediakan API yang kaya dan sokongan pelanggan, sangat memudahkan proses untuk pembangun menggunakan fungsi carian.

2. Pasang dan konfigurasikan Manticore Search

  1. Muat turun dan pasang Manticore Search: Mengikut garis panduan dokumentasi rasmi, muat turun dan pasang versi Carian Manticore yang sesuai untuk sistem anda.
  2. Buat indeks: Gunakan alatan yang disediakan oleh Manticore Search untuk mencipta indeks yang anda perlukan. Contohnya, jika anda ingin mencipta indeks untuk carian artikel, anda boleh menggunakan arahan berikut:

    indexer --config /path/to/config.conf --rotate --all
  3. Konfigurasikan perkhidmatan carian: Edit fail konfigurasi Carian Manticore dan tetapkan parameter seperti port pendengaran dan laluan indeks. Contohnya adalah seperti berikut:

    searchd {
     listen = localhost:9306
     pid_file = /path/to/searchd.pid
     log = /path/to/searchd.log
     query_log = /path/to/query.log
    }
  4. Mulakan perkhidmatan carian: Gunakan arahan berikut untuk memulakan perkhidmatan carian:

    searchd --config /path/to/config.conf

3. Gunakan PHP untuk mencari

  1. Pasang PHP (perpustakaan klien Manticore Search manticoresearch/manticoresearch):

    composer require manticoresearch/manticoresearch
  2. Buat sambungan carian:

    $client = new ManticoresearchClient(['host' => 'localhost', 'port' => 9308]);
  3. Lakukan pertanyaan carian:

    $params = [
     'index' => 'articles',
     'body' => [
         'query' => [
             'match' => [
                 'title' => 'PHP'
             ]
         ]
     ]
    ];
    
    $response = $client->search($params);

Peribadikan penapis carian
  1. berdasarkan kata kunci

  2. Gabungkan berbilang penapis:
  3. $params = [
     'index' => 'articles',
     'body' => [
         'query' => [
             'match' => [
                 'title' => 'PHP'
             ]
         ],
         'filter' => [
             'term' => [
                 'category' => 'Tutorial'
             ]
         ]
     ]
    ];
    
    $response = $client->search($params);

  4. Penapis Skop:
$params = [
 'index' => 'articles',
 'body' => [
     'query' => [
         'match' => [
             'title' => 'PHP'
         ]
     ],
     'filter' => [
         'bool' => [
             'must' => [
                 ['term' => ['category' => 'Tutorial']],
                 ['term' => ['author' => 'John']]
             ],
             'must_not' => [
                 ['term' => ['status' => 'Draft']]
             ]
         ]
     ]
 ]
];

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


Kesimpulan:🎜Artikel ini menerangkan cara membangunkan penapis carian tersuai menggunakan PHP dan enjin carian Manticore Search. Melalui perpustakaan klien API dan PHP yang disediakan oleh Manticore Search, kami boleh melaksanakan pelbagai keperluan carian dengan mudah, termasuk penapisan kata kunci, syarat penapisan berbilang dan penapisan julat. Saya harap artikel ini akan membantu pembangun apabila membina keupayaan carian yang cekap. 🎜

Atas ialah kandungan terperinci Panduan Pembangunan Carian PHP dan Manticore: Penapis Carian Sangat Boleh Disesuaikan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn