Gunakan PHP dan Manticore Search untuk membangunkan alat carian yang sangat disesuaikan
Pengenalan:
Dengan perkembangan Internet dan pertumbuhan data yang pesat, enjin carian telah menjadi alat penting untuk kami mendapatkan hasil yang kami perlukan dengan cepat daripada jumlah yang besar. maklumat. Untuk memenuhi keperluan yang berbeza, alat carian yang sangat disesuaikan menjadi semakin penting. Artikel ini akan memperkenalkan cara menggunakan PHP dan Carian Manticore untuk membangunkan alat carian yang sangat disesuaikan, dengan contoh kod.
Ikhtisar:
Manticore Search ialah enjin carian teks penuh sumber terbuka, yang merupakan pengganti enjin carian Sphinx. Carian Manticore adalah pantas, berskala dan cekap, serta menyokong pelbagai format data dan kaedah pertanyaan, termasuk carian teragih dan carian geospatial. Digabungkan dengan PHP, bahasa pengaturcaraan yang digunakan secara meluas, kami boleh menyesuaikan dan mengembangkan fungsi carian dengan mudah.
Langkah 1: Pasang Manticore Search dan sambungan PHP
Mula-mula, kami perlu memasang Manticore Search dan sambungan PHP yang berkaitan pada pelayan. Untuk langkah pemasangan khusus, sila rujuk dokumentasi rasmi Carian Manticore. Selepas pemasangan selesai, kami boleh menjalankan Carian Manticore melalui baris arahan untuk mengesahkan sama ada pemasangan berjaya.
Seterusnya, kami perlu memasang sokongan untuk Manticore Search dalam PHP. Pustaka sambungan PHP yang berkaitan boleh dipasang melalui Komposer Contoh arahan adalah seperti berikut:
composer require mantisearch/manticoresearch
Langkah 2: Buat indeks dan penyediaan data
Untuk menjalankan carian yang berkesan, kita perlu membuat indeks dan mengimport data untuk dijadikan. mencari ke dalamnya. Manticore Search menyediakan pelbagai pilihan konfigurasi indeks yang boleh dilaraskan mengikut keperluan sebenar. Berikut ialah contoh konfigurasi indeks mudah:
$indexConfig = [ 'type' => 'plain', 'path' => '/path/to/index', 'source' => [ 'type' => 'mysql', 'sql_host' => 'localhost', 'sql_user' => 'root', 'sql_pass' => 'password', 'sql_db' => 'database', 'sql_query' => 'SELECT id, title, content FROM articles', ], 'charset_type' => 'utf-8', 'charset_table' => '0..9, A..Z->a..z, _, -', 'min_word_len' => 2, ];
Dalam kod di atas, kami mencipta indeks dengan menentukan parameter seperti jenis indeks, sumber data dan pernyataan pertanyaan. Nilai parameter boleh dilaraskan mengikut situasi tertentu.
Langkah 3: Lakukan operasi carian
Setelah indeks dibuat dan data berjaya diimport, operasi carian boleh dilakukan. Carian Manticore menyediakan pelbagai kaedah carian, termasuk carian teks penuh, carian kabur, carian julat, dsb. Berikut ialah contoh carian teks penuh ringkas:
$client = new ManticoresearchClient(); $params = [ 'index' => 'articles', 'body' => [ 'query' => [ 'match' => [ 'content' => 'keyword', ], ], ], 'limit' => 10, ]; $response = $client->search($params);
Dalam kod di atas, kami mula-mula mencipta objek klien Manticore Search, dan kemudian menentukan parameter seperti indeks carian, kata kunci pertanyaan dan bilangan hasil yang dikembalikan. Akhir sekali, operasi carian dilakukan dengan memanggil kaedah search()
dan hasil carian diperoleh.
Langkah 4: Paparan hasil dan fungsi penyesuaian
Langkah terakhir ialah untuk memaparkan dan menyesuaikan hasil carian. Berdasarkan keperluan sebenar, kami boleh memaparkan hasil carian dalam senarai, air terjun, paging, dsb., dan menyediakan pelbagai pilihan penapisan dan pengisihan. Berikut ialah contoh paparan hasil carian mudah:
foreach ($response['hits']['hits'] as $hit) { echo '<h3>' . $hit['title'] . '</h3>'; echo '<p>' . $hit['content'] . '</p>'; }
Dalam kod di atas, kami melaksanakan fungsi paparan hasil carian mudah dengan merentasi hasil carian dan mengeluarkan tajuk dan kandungan.
Kesimpulan:
Dengan menggabungkan PHP dan Manticore Search, kami boleh membangunkan alat carian yang boleh disesuaikan dengan mudah. Dengan menetapkan konfigurasi indeks dan parameter carian dengan betul, kecekapan dan ketepatan carian boleh dipertingkatkan. Selain itu, Manticore Search juga menyediakan pelbagai fungsi dan pilihan sambungan untuk memenuhi pelbagai keperluan peribadi. Saya harap artikel ini membantu anda membangunkan alat carian.
Pautan rujukan:
Atas ialah kandungan terperinci Membangunkan alat carian yang sangat disesuaikan menggunakan PHP dan Carian Manticore. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!