Rumah pembangunan bahagian belakang tutorial php Pembangunan Carian PHP dan Manticore: melaksanakan antara muka carian yang sangat disesuaikan

Pembangunan Carian PHP dan Manticore: melaksanakan antara muka carian yang sangat disesuaikan

Aug 05, 2023 pm 06:41 PM
php manticore search Antara muka carian boleh disesuaikan

Pembangunan Carian PHP dan Manticore: Melaksanakan antara muka carian yang sangat disesuaikan

Pengenalan:
Dalam pembangunan web, fungsi carian adalah keperluan yang sangat penting dan biasa. Untuk meningkatkan prestasi carian dan pengalaman pengguna, kami perlu menggunakan enjin carian yang sangat disesuaikan. Dalam artikel ini, saya akan menerangkan cara membangunkan antara muka carian yang berkuasa dan boleh disesuaikan menggunakan PHP dan Carian Manticore.

Manticore Search ialah versi dinaik taraf berdasarkan enjin carian sumber terbuka Sphinx, yang menyediakan prestasi lebih tinggi dan ciri yang lebih kaya, seperti carian teks penuh, pengindeksan teragih dan pilihan penyesuaian yang fleksibel. Sebagai bahasa pembangunan web yang biasa digunakan, PHP boleh disepadukan dengan lancar dengan Manticore Search untuk mencapai fungsi carian yang fleksibel dan boleh disesuaikan.

Langkah 1: Pasang Manticore Search
Mula-mula, kita perlu memasang Manticore Search pada pelayan. Anda boleh memuat turun pakej pemasangan melalui laman web rasmi (https://manticoresearch.com/) dan memasang serta mengkonfigurasinya mengikut dokumen rasmi. Selepas pemasangan selesai, kami boleh memulakan perkhidmatan Carian Manticore melalui baris arahan terminal.

Langkah 2: Buat indeks
Sebelum menggunakan Carian Manticore, kami perlu mencipta indeks untuk menyimpan data kami. Penciptaan indeks boleh dilakukan menggunakan alat baris arahan yang disediakan oleh Manticore Search atau menggunakan kod PHP. Berikut ialah contoh mencipta indeks menggunakan kod PHP:

<?php
require_once 'vendor/autoload.php';

use ManticoresearchDocumentsBuilder;

$index = 'my_index';
$client = new ManticoresearchClientClient();
$client->setHost('localhost');
$client->setPort(9308);

$builder = new DocumentsBuilder($client);
$builder->index($index);

$data = [
    [
        'id' => 1,
        'title' => 'Manticore Search',
        'content' => 'Manticore Search is a powerful search engine',
    ],
    [
        'id' => 2,
        'title' => 'PHP',
        'content' => 'PHP is a popular programming language for web development',
    ],
    // ... more data items
];

foreach ($data as $item) {
    $builder->create([
        'id' => $item['id'],
        'title' => $item['title'],
        'content' => $item['content'],
    ]);
}

$builder->commit();
Salin selepas log masuk

Dengan contoh kod di atas, kita boleh mencipta indeks yang dipanggil my_index dan menambah beberapa data padanya. my_index的索引,并向其中添加一些数据。

步骤三:实现搜索功能
在创建索引后,我们可以使用PHP代码调用Manticore Search的API来实现搜索功能。下面是一个实现基本搜索功能的示例:

<?php
require_once 'vendor/autoload.php';

use ManticoresearchClientClient;

$index = 'my_index';
$query = 'Manticore Search';

$client = new Client();
$client->setHost('localhost');
$client->setPort(9308);

$search = $client->search($index);
$result = $search->search($query);

foreach ($result['hits']['hits'] as $hit) {
    echo 'ID: ' . $hit['_id'] . '<br>';
    echo 'Title: ' . $hit['_source']['title'] . '<br>';
    echo 'Content: ' . $hit['_source']['content'] . '<br>';
    echo '<br>';
}
Salin selepas log masuk

通过上述示例代码,我们可以使用search

Langkah 3: Laksanakan fungsi carian

Selepas mencipta indeks, kita boleh menggunakan kod PHP untuk memanggil API Carian Manticore untuk melaksanakan fungsi carian. Berikut ialah contoh pelaksanaan fungsi carian asas:

<!DOCTYPE html>
<html>
<head>
    <style>
        .search-box {
            width: 300px;
            margin-bottom: 10px;
        }

        .search-results {
            list-style: none;
            padding: 0;
        }

        .search-results li {
            padding: 10px;
            background-color: #f5f5f5;
            margin-bottom: 5px;
        }
    </style>
</head>
<body>
    <div class="search-box">
        <input type="text" id="search-input" placeholder="Search...">
        <input type="button" id="search-button" value="Search">
    </div>

    <ul class="search-results"></ul>

    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <script>
        $(document).ready(function() {
            $('#search-button').click(function() {
                var query = $('#search-input').val();

                $.ajax({
                    url: 'search.php',
                    type: 'GET',
                    data: {query: query},
                    success: function(response) {
                        $('.search-results').empty();

                        response.forEach(function(result) {
                            var li = $('<li></li>');
                            li.text(result.title);
                            $('.search-results').append(li);
                        });
                    }
                });
            });
        });
    </script>
</body>
</html>
Salin selepas log masuk
Melalui kod contoh di atas, kita boleh menggunakan kaedah search untuk mencari dan mendapatkan hasil carian. Kami kemudiannya boleh mengulangi hasil carian dan mengeluarkan maklumat yang berkaitan.

Langkah 4: Sesuaikan antara muka carian

Untuk memberikan pengalaman pengguna yang lebih baik, kami boleh menyesuaikan gaya dan kefungsian antara muka carian mengikut keperluan. Berikut ialah contoh penggunaan HTML dan CSS untuk menyesuaikan antara muka carian:
rrreee

Kod sampel di atas menunjukkan antara muka carian mudah di mana pengguna boleh memasukkan kata kunci dan mengklik butang carian. Fungsi carian menggunakan perpustakaan jQuery untuk memuatkan hasil carian secara tidak segerak dan memaparkan hasil pada halaman.

Kesimpulan:
    Melalui gabungan PHP dan Manticore Search, kami boleh mencapai antara muka carian yang sangat disesuaikan. Dalam artikel ini, kami mempelajari cara memasang Carian Manticore, mencipta indeks, melaksanakan fungsi carian asas dan cara menyesuaikan gaya dan kefungsian antara muka carian melalui HTML dan CSS. Menggunakan kaedah dan kod sampel ini, kami boleh menyesuaikan antara muka carian yang sesuai mengikut keperluan projek untuk meningkatkan pengalaman pengguna dan hasil carian.
  • Pautan rujukan:
https://manticoresearch.com/🎜🎜https://github.com/manticoresoftware/manticoresearch-php🎜🎜

Atas ialah kandungan terperinci Pembangunan Carian PHP dan Manticore: melaksanakan antara muka carian yang sangat disesuaikan. 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 尊渡假赌尊渡假赌尊渡假赌

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)

Konfigurasi Projek CakePHP Konfigurasi Projek CakePHP Sep 10, 2024 pm 05:25 PM

Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

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

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.

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.

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.

See all articles