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

王林
Lepaskan: 2023-08-05 08:22:01
asal
1365 orang telah melayarinya

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
    Salin selepas log masuk
  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
    }
    Salin selepas log masuk
  4. Mulakan perkhidmatan carian: Gunakan arahan berikut untuk memulakan perkhidmatan carian:

    searchd --config /path/to/config.conf
    Salin selepas log masuk

3. Gunakan PHP untuk mencari

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

    composer require manticoresearch/manticoresearch
    Salin selepas log masuk
  2. Buat sambungan carian:

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

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

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);
    Salin selepas log masuk

  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);
Salin selepas log masuk


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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!