Rumah > Artikel > pembangunan bahagian belakang > Gunakan PHP dan coreseek untuk melaksanakan fungsi carian resipi yang tepat
Gunakan PHP dan coreseek untuk mencapai fungsi carian resipi yang tepat
Ikhtisar:
Dalam kehidupan yang serba pantas hari ini, semakin ramai orang mula memberi perhatian kepada kesihatan pemakanan mereka. Mencari resipi yang betul menjadi satu keperluan. Artikel ini akan memperkenalkan cara menggunakan PHP dan enjin carian coreseek untuk melaksanakan fungsi carian resipi yang tepat untuk membantu pengguna mencari resipi yang memenuhi keperluan mereka dengan mudah.
Persediaan:
Sebelum kita mula, kita perlu menyediakan beberapa alatan:
Idea teras:
Langkah 1: Sediakan data resipi dan importnya ke dalam pangkalan data MySQL
Pertama, kita perlu mencipta pangkalan data untuk menyimpan data resipi. Anda boleh menggunakan alat seperti phpMyAdmin atau terus melaksanakan pernyataan SQL yang sepadan pada baris arahan untuk menciptanya.
Pernyataan SQL untuk mencipta pangkalan data dan jadual adalah seperti berikut:
BUAT PANGKALAN DATA JIKA TIDAK WUJUD resipi;
GUNAKAN resipi;
BUAT JADUAL JIKA TIDAK WUJUD resipi (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, title VARCHAR(255) NOT NULL, ingredients TEXT NOT NULL, directions TEXT NOT NULL
);
Skrip kita boleh tulis seterusnya untuk membaca data resipi tempatan dan mengimportnya ke dalam pangkalan data. Katakan data resipi kami disimpan dalam fail teks yang dipanggil "recipes.txt" dengan format berikut:
Tajuk 1
Bahan 1, Bahan 2, Bahan 3
Langkah 1, Langkah 2, Langkah 3
Tajuk 2
4, Bahan 5, Bahan 6
Langkah 4, Langkah 5, Langkah 6
Kod skrip PHP adalah seperti berikut:
06f9833e423823efb6c20c7328b49045
Dalam kod di atas, kami membuka fail bernama "recipes.txt" dan membaca kandungannya baris demi baris. Bezakan tajuk, ramuan dan langkah resipi yang berbeza dengan menggunakan garisan kosong. Selepas setiap resipi lengkap dibaca, kami memasukkannya ke dalam pangkalan data.
Langkah 2: Konfigurasikan dan mulakan enjin carian Coreseek
Mula-mula, nyahzip pakej mampat coreseek yang dimuat turun ke direktori yang ditentukan. Masukkan direktori Coreseek, edit fail konfigurasi "sphinx.conf", dan konfigurasikan kandungan berikut:
source recipe
{
type = mysql sql_host = localhost sql_user = root sql_pass = your_password sql_db = recipe sql_port = 3306 sql_query = SELECT id, title, ingredients, directions FROM recipes
}
index recipe
{
source = recipe path = /path/to/index/recipe docinfo = extern min_word_len = 1 charset_type = utf-8
}
researchd
}
listen = 9312 log = /path/to/searchd.log query_log = /path/to/query.log max_matches = 1000f5a47148e367a6035fd7a2faa965022eKod skrip PHP kelihatan seperti di bawah (search.php):
02bf0562caa661f1d224fe8cbebeba45 Dalam kod di atas, kami mula-mula mendapatkan kata kunci yang dimasukkan oleh pengguna dan menyimpannya dalam pembolehubah $kata kunci. Kemudian, kami menggunakan kata kunci MATCH untuk menanyakan pangkalan data dan mendapatkan data resipi yang sepadan dengan kata kunci. Pertanyaan pangkalan data khusus dan kod penghuraian hasil ditinggalkan di sini, anda boleh melaksanakannya mengikut keperluan anda sendiri. Akhir sekali, dalam halaman hasil carian, kami boleh memaparkan hasil carian mengikut keperluan khusus, seperti menggunakan pernyataan gelung untuk melintasi data yang ditanya dan memaparkannya kepada pengguna dalam bentuk senarai atau kad. Ringkasan:
Artikel ini memperkenalkan cara menggunakan PHP dan enjin carian coreseek untuk mencapai fungsi carian resipi yang tepat. Dengan menyediakan data resipi, mengkonfigurasi dan memulakan enjin carian Coreseek, dan menulis kod PHP yang berkaitan, kami boleh dengan mudah melaksanakan fungsi carian resipi yang berkuasa untuk membantu pengguna mencari resipi yang memenuhi keperluan mereka dengan cepat. Pada masa yang sama, anda juga boleh mengembangkan dan mengoptimumkan kod mengikut keperluan anda sendiri untuk mencapai pengalaman pengguna yang lebih baik.
Atas ialah kandungan terperinci Gunakan PHP dan coreseek untuk melaksanakan fungsi carian resipi yang tepat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!