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
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
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 }
Mulakan perkhidmatan carian: Gunakan arahan berikut untuk memulakan perkhidmatan carian:
searchd --config /path/to/config.conf
3. Gunakan PHP untuk mencari
Pasang PHP (perpustakaan klien Manticore Search manticoresearch/manticoresearch):
composer require manticoresearch/manticoresearch
Buat sambungan carian:
$client = new ManticoresearchClient(['host' => 'localhost', 'port' => 9308]);
Lakukan pertanyaan carian:
$params = [ 'index' => 'articles', 'body' => [ 'query' => [ 'match' => [ 'title' => 'PHP' ] ] ] ]; $response = $client->search($params);
berdasarkan kata kunci
$params = [ 'index' => 'articles', 'body' => [ 'query' => [ 'match' => [ 'title' => 'PHP' ] ], 'filter' => [ 'term' => [ 'category' => 'Tutorial' ] ] ] ]; $response = $client->search($params);
$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);
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!