Rumah rangka kerja php Laravel Bagaimana untuk melaksanakan pertanyaan kabur pada pelbagai medan dalam rangka kerja thinkphp

Bagaimana untuk melaksanakan pertanyaan kabur pada pelbagai medan dalam rangka kerja thinkphp

Apr 21, 2023 am 10:09 AM

Apabila membangunkan aplikasi web, selalunya perlu menggunakan pertanyaan kabur untuk melaksanakan fungsi carian. Apabila menggunakan rangka kerja thinkphp, pertanyaan kabur boleh dilaksanakan dengan mudah. Artikel ini akan memperkenalkan cara untuk melaksanakan pertanyaan kabur pada berbilang medan dalam rangka kerja thinkphp.

Pertama, kita perlu menentukan kaedah dalam model untuk mendapatkan hasil pertanyaan kabur. Dalam kaedah ini, kita boleh menggunakan parameter pertanyaan kabur % yang disertakan dengan thinkphp untuk melaksanakan pertanyaan kabur. Kod khusus adalah seperti berikut:

public function getFuzzySearchResult($keyword){
    $result = $this->where('title', 'like', '%'.$keyword.'%')  //在title字段中进行模糊查询
                   ->whereOr('content', 'like', '%'.$keyword.'%')  //在content字段中进行模糊查询
                   ->select();
    return $result;
}
Salin selepas log masuk

Dalam kod di atas, kami menggunakan dua syarat pertanyaan di mana dan di manaAtau. Antaranya, di mana merujuk kepada hasil pertanyaan bahawa medan yang ditentukan adalah sama dengan nilai yang ditentukan, dan whereOr merujuk kepada hasil pertanyaan bahawa medan yang ditentukan adalah sama dengan nilai yang ditentukan atau keputusan bahawa medan yang ditentukan adalah sama dengan nilai yang ditentukan. Oleh itu, dalam kod di atas, kita boleh melakukan pertanyaan kabur dalam medan tajuk dan kandungan dan menggabungkan set keputusan kembali.

Seterusnya, kami memanggil kaedah dalam pengawal dan menghantar hasil pertanyaan kepada paparan untuk paparan. Kod khusus adalah seperti berikut:

public function fuzzySearch(){
    $keyword = input('keyword');  //获取搜索关键字
    $model = new Article();  //实例化模型
    $result = $model->getFuzzySearchResult($keyword);  //获取模糊查询结果
    $this->assign('result', $result);  //将结果传递给视图
    return $this->fetch('search_result');  //跳转到展示页面
}
Salin selepas log masuk

Dalam kod di atas, kami mula-mula mendapatkan kata kunci carian dan membuat model. Kemudian panggil kaedah getFuzzySearchResult yang ditakrifkan dalam model untuk mendapatkan hasil pertanyaan kabur. Akhir sekali, hantar keputusan ke paparan dan lompat ke halaman paparan.

Akhir sekali, kami memaparkan hasil pertanyaan kabur dalam paparan. Kod khusus adalah seperti berikut:

{if $result}
    {foreach $result as $item}
        <div class="article-item">
            <div class="title">{$item.title}</div>
            <div class="content">{$item.content}</div>
        </div>
    {/foreach}
{else}
    <div class="no-result">没有搜索结果哦~</div>
{/if}
Salin selepas log masuk

Dalam kod di atas, kami mula-mula menentukan sama ada hasil carian kosong Jika ia tidak kosong, kemudian gunakan gelung foreach untuk memaparkan setiap hasil kosong, pengguna digesa bahawa tiada hasil Carian.

Melalui kaedah di atas, kita boleh melaksanakan fungsi pertanyaan kabur berbilang medan dalam rangka kerja thinkphp. Terima kasih semua kerana membaca, saya harap ia akan membantu perkembangan sebenar.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pertanyaan kabur pada pelbagai medan dalam rangka kerja thinkphp. 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

Tag artikel 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)

Kaedah Pemasangan Rangka Kerja Laravel Kaedah Pemasangan Rangka Kerja Laravel Mar 06, 2025 pm 01:59 PM

Kaedah Pemasangan Rangka Kerja Laravel

Bagaimana membina API RESTful dengan ciri -ciri canggih di Laravel? Bagaimana membina API RESTful dengan ciri -ciri canggih di Laravel? Mar 11, 2025 pm 04:13 PM

Bagaimana membina API RESTful dengan ciri -ciri canggih di Laravel?

Pengurusan Menu Laravel-Admin Pengurusan Menu Laravel-Admin Mar 06, 2025 pm 02:02 PM

Pengurusan Menu Laravel-Admin

Versi Laravel apa yang terbaik Versi Laravel apa yang terbaik Mar 06, 2025 pm 01:58 PM

Versi Laravel apa yang terbaik

Bagaimana untuk melaksanakan pengesahan dan kebenaran OAuth2 di Laravel? Bagaimana untuk melaksanakan pengesahan dan kebenaran OAuth2 di Laravel? Mar 12, 2025 pm 05:56 PM

Bagaimana untuk melaksanakan pengesahan dan kebenaran OAuth2 di Laravel?

Apakah amalan terbaik untuk menggunakan Laravel dalam persekitaran awan asli? Apakah amalan terbaik untuk menggunakan Laravel dalam persekitaran awan asli? Mar 14, 2025 pm 01:44 PM

Apakah amalan terbaik untuk menggunakan Laravel dalam persekitaran awan asli?

Bagaimana saya membuat dan menggunakan arahan pisau tersuai di laravel? Bagaimana saya membuat dan menggunakan arahan pisau tersuai di laravel? Mar 17, 2025 pm 02:50 PM

Bagaimana saya membuat dan menggunakan arahan pisau tersuai di laravel?

Bagaimanakah saya boleh membuat dan menggunakan peraturan pengesahan tersuai di Laravel? Bagaimanakah saya boleh membuat dan menggunakan peraturan pengesahan tersuai di Laravel? Mar 17, 2025 pm 02:38 PM

Bagaimanakah saya boleh membuat dan menggunakan peraturan pengesahan tersuai di Laravel?

See all articles