Rumah > Artikel > pembangunan bahagian belakang > Panduan Pembangunan Carian PHP dan Manticore: Membina Carian Kluster Cekap
Panduan Pembangunan Carian PHP dan Manticore: Membina Carian Kluster Cekap
Manticore Search ialah enjin carian teks penuh berprestasi tinggi, yang merupakan cabang enjin carian Sphinx dan direka untuk mengendalikan set data berskala besar dan konkurensi tinggi pertanyaan. Ia disepadukan sangat rapat dengan PHP dan menyediakan API dan fungsi yang kaya, membolehkan pembangun membina aplikasi carian kelompok yang cekap dengan mudah.
Artikel ini akan memperkenalkan cara menggunakan PHP dan Manticore Search untuk membina aplikasi carian kelompok yang cekap. Kami akan merangkumi aspek berikut:
$dsn = "mysql:host=127.0.0.1;port=9306;dbname=my_index"; $username = "root"; $password = ""; try { $connection = new PDO($dsn, $username, $password); } catch (PDOException $e) { echo "Connection failed: " . $e->getMessage(); die; }
$createIndexQuery = "CREATE TABLE my_index ( id INTEGER, title TEXT, content TEXT, weight INTEGER ) ENGINE='MANTICORE'"; $connection->query($createIndexQuery);Kami juga boleh menggunakan pernyataan SQL lain untuk mengubah suai struktur indeks, seperti menambah medan, menukar atribut medan, dsb.
$searchQuery = "SELECT * FROM my_index WHERE MATCH('keyword')"; $result = $connection->query($searchQuery); $rows = $result->fetchAll(PDO::FETCH_ASSOC);Kata kunci di sini boleh menjadi satu perkataan atau gabungan berbilang perkataan. Manticore Search akan mengembalikan hasil yang berkaitan dengan kata kunci.
$searchQuery = "SELECT * FROM my_index WHERE MATCH('keyword') ORDER BY weight DESC"; // 执行查询并获取结果Selain itu, kami juga boleh menggunakan klausa WHERE untuk menapis hasil carian:
$searchQuery = "SELECT * FROM my_index WHERE MATCH('keyword') AND category='news'"; // 执行查询并获取结果
$searchQuery = "SELECT * FROM my_index WHERE title LIKE '%keyword%'"; $searchQuery = "SELECT * FROM my_index WHERE title REGEXP '[A-Za-z]+word'"; $searchQuery = "SELECT * FROM my_index WHERE date BETWEEN '2022-01-01' AND '2022-12-31'";
sudo indexer --rotate --all sudo searchd --stop sudo searchd --startSelain itu, kita juga boleh menggunakan kata kunci EXPLAIN untuk mengoptimumkan prestasi pertanyaan dan melihat rancangan pelaksanaan pertanyaan dan penggunaan indeks. RingkasanMelalui artikel ini, kami mempelajari cara menggunakan PHP dan Carian Manticore untuk membina aplikasi carian kelompok yang cekap. Kami belajar untuk memasang Carian Manticore, menyambung ke kluster, mencipta dan mengurus indeks, melaksanakan pertanyaan carian teks penuh dan melaksanakan fungsi carian lanjutan. Manticore Search ialah enjin carian yang berkuasa dan mudah digunakan yang disepadukan dengan sangat rapat dengan PHP. Dengan menggunakan sepenuhnya fungsi dan API Manticore Search, kami boleh membina aplikasi carian kelompok yang cekap untuk memenuhi pelbagai keperluan carian. Semoga artikel ini dapat membantu anda!
Atas ialah kandungan terperinci Panduan Pembangunan Carian PHP dan Manticore: Membina Carian Kluster Cekap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!