


Bagaimana untuk melaksanakan pertanyaan kabur pada pelbagai medan dalam rangka kerja thinkphp
Apr 21, 2023 am 10:09 AMApabila 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; }
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'); //跳转到展示页面 }
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}
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!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kaedah Pemasangan Rangka Kerja Laravel

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

Bagaimana untuk melaksanakan pengesahan dan kebenaran OAuth2 di Laravel?

Apakah amalan terbaik untuk menggunakan Laravel dalam persekitaran awan asli?

Bagaimana saya membuat dan menggunakan arahan pisau tersuai di laravel?

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