Rumah pembangunan bahagian belakang tutorial php Gunakan PHP dan coreseek untuk melaksanakan fungsi carian strategi perjalanan pintar

Gunakan PHP dan coreseek untuk melaksanakan fungsi carian strategi perjalanan pintar

Aug 06, 2023 am 11:07 AM
php Pintar coreseek

Gunakan PHP dan coreseek untuk merealisasikan fungsi carian panduan perjalanan pintar

1 Pengenalan
Dengan perkembangan pesat Internet, perjalanan secara beransur-ansur menjadi sebahagian daripada kehidupan orang ramai. Laman web panduan perjalanan menyediakan orang ramai dengan pelbagai maklumat perjalanan dan maklumat panduan untuk membantu mereka merancang dan menikmati perjalanan mereka. Walau bagaimanapun, apabila maklumat strategi menjadi lebih banyak dan pelbagai, cara menyediakan pengguna dengan fungsi carian yang lebih pintar menjadi satu cabaran.

Untuk menyelesaikan masalah ini, kami boleh menggunakan PHP dan coreseek, enjin carian teks penuh, untuk membina fungsi carian panduan perjalanan pintar.

2. Pasang dan konfigurasikan coreseek
Pertama, kita perlu memasang dan mengkonfigurasi coreseek. coreseek ialah perkhidmatan carian berdasarkan enjin carian teks penuh Sphinx, yang boleh menyediakan keupayaan carian teks penuh yang cekap. Kami boleh memuat turun versi terkini coreseek dari laman web rasmi coreseek (http://www.coreseek.cn/).

Proses memasang coreseek agak rumit, dan anda perlu mengikuti dokumentasi coreseek rasmi. Mula-mula, kita perlu memasang Sphinx, kemudian menyusun dan memasang sambungan PHP coreseek. Akhir sekali, konfigurasikan fail konfigurasi coreseek dan cipta indeks Sphinx. Selepas pemasangan dan konfigurasi selesai, kami boleh menggunakan API yang disediakan oleh coreseek untuk melakukan carian teks penuh.

3 Cipta pangkalan data dan jadual
Kita perlu mencipta pangkalan data MySQL dan membuat jadual dalam pangkalan data untuk menyimpan maklumat panduan perjalanan. Sebagai contoh, kami mencipta pangkalan data bernama "travel_guide" dan mencipta jadual bernama "guides" dalam pangkalan data. Struktur jadual adalah seperti berikut:

CIPTA JADUAL panduan (guides (
id int(11) unsigned NOT NULL AUTO_INCREMENT,
title varchar(255) NOT NULL DEFAULT '',
content text NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

四、插入数据
在"guides"表中插入一些旅行攻略信息的示例数据。例如,我们插入三条数据,分别是关于北京、上海和杭州的旅行攻略。

INSERT INTO guides (title, content id int(11) unsigned NOT NULL AUTO_INCREMENT,
title varchar(255 ) BUKAN NULL LALAI '',
kandungan teks BUKAN NULL,
KUNCI UTAMA (id)

) ENJIN=InnoDB CARSET LAALA=utf8;


4 dalam "panduan "Masukkan beberapa data sampel maklumat panduan perjalanan ke dalam jadual. Sebagai contoh, kami memasukkan tiga keping data, iaitu strategi perjalanan untuk Beijing, Shanghai dan Hangzhou.

MASUKKAN KE DALAM panduan (tajuk, kandungan) NILAI
('Pemandu Perjalanan Beijing', 'Beijing ialah ibu negara China dan mempunyai sejarah yang panjang dan budaya yang kaya '),

('Shanghai Travel Guide', 'Shanghai ialah pusat ekonomi China dengan landskap bandar yang moden.'),

('Hangzhou Travel Guide', 'Hangzhou ialah tarikan pelancong di China, Terdapat Kawasan Pemandangan Tasik Barat yang indah ');

5. Laksanakan fungsi carian
Kini, kita boleh menggunakan PHP dan coreseek untuk melaksanakan fungsi carian panduan perjalanan pintar. Pertama, kita perlu menyambung ke perkhidmatan coreseek dalam kod PHP dan menentukan kata kunci carian.

require_once('sphinxapi.php');

$key = 'Travel guide';

$cl = new SphinxClient();

$cl->SetServer("localhost", 9312) ;

$cl->SetMatchMode(SPH_MATCH_EXTENDED);

$cl->SetLimits(0, 10);

$result = $cl->Query($key, "guides");

$result === false) {

echo "搜索失败:" . $cl->GetLastError();
Salin selepas log masuk

} else {

echo "共搜索到" . $result['total'] . "条结果:";

foreach ($result['matches'] as $match) {
    echo "ID:" . $match['id'] . ",标题:" . $match['attrs']['title'] . ",内容:" . $match['attrs']['content'] . "<br>";
}
Salin selepas log masuk

}

?>

Dalam kod, kami mula-mula memperkenalkan fail perpustakaan PHP coreseek (sphinxapi.php). Kemudian, nyatakan kata kunci carian ($key = 'panduan perjalanan'). Seterusnya, cipta objek SphinxClient dan tetapkan alamat dan port untuk menyambung ke perkhidmatan coreseek.


Dengan memanggil kaedah SetMatchMode dan SetLimits, kami boleh menetapkan mod carian dan had hasil carian (di sini, maksimum 10 keputusan dikembalikan). Akhir sekali, kaedah Pertanyaan dipanggil untuk melakukan carian.

Jika carian berjaya, kita boleh mendapatkan maklumat hasil carian melalui pembolehubah $result. Sebagai contoh, gunakan $result['total'] untuk mendapatkan jumlah bilangan hasil carian; gunakan $result['matches'] untuk mendapatkan maklumat terperinci bagi setiap hasil, termasuk ID dan tajuk.

6. Paparan keputusan

Akhir sekali, kami boleh memaparkan hasil carian di halaman web. Katakan kita menggunakan kod HTML berikut untuk memaparkan hasil carian:

<title>旅行攻略搜索结果</title>
Salin selepas log masuk

<h1>旅行攻略搜索结果</h1>

<ul>
<?php foreach ($result['matches'] as $match) { ?>
    <li>
        <h2><?php echo $match['attrs']['title']; ?></h2>
        <p><?php echo $match['attrs']['content']; ?></p>
    </li>
<?php } ?>
</ul>
Salin selepas log masuk

/html 🎜 🎜Dalam halaman web ini, kami menggunakan senarai tidak tersusun untuk memaparkan hasil carian. Dengan menggelung melalui tatasusunan $result['matches'], kita boleh mengulangi setiap hasil dan memaparkan tajuk dan kandungan dalam item senarai. 🎜🎜Dengan mengakses halaman web, kita boleh melihat halaman hasil carian Setiap item senarai mengandungi tajuk dan kandungan untuk memudahkan pengguna melihat dan memilih. 🎜🎜Ringkasnya, menggunakan PHP dan coreseek boleh merealisasikan fungsi carian strategi perjalanan pintar. Dengan mengkonfigurasi coreseek dan menggunakan API yang disediakannya, kami boleh melakukan carian teks penuh dengan cepat dan cekap. Ini menyediakan alat carian yang lebih pintar dan mudah untuk tapak web panduan perjalanan, memberikan pengguna pengalaman perjalanan yang lebih baik. 🎜

Atas ialah kandungan terperinci Gunakan PHP dan coreseek untuk melaksanakan fungsi carian strategi perjalanan pintar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

CakePHP Bekerja dengan Pangkalan Data CakePHP Bekerja dengan Pangkalan Data Sep 10, 2024 pm 05:25 PM

Bekerja dengan pangkalan data dalam CakePHP adalah sangat mudah. Kami akan memahami operasi CRUD (Buat, Baca, Kemas Kini, Padam) dalam bab ini.

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Penghalaan CakePHP Penghalaan CakePHP Sep 10, 2024 pm 05:25 PM

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Pengesah Mencipta CakePHP Pengesah Mencipta CakePHP Sep 10, 2024 pm 05:26 PM

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

Pembalakan CakePHP Pembalakan CakePHP Sep 10, 2024 pm 05:26 PM

Log masuk CakePHP adalah tugas yang sangat mudah. Anda hanya perlu menggunakan satu fungsi. Anda boleh log ralat, pengecualian, aktiviti pengguna, tindakan yang diambil oleh pengguna, untuk sebarang proses latar belakang seperti cronjob. Mengelog data dalam CakePHP adalah mudah. Fungsi log() disediakan

See all articles