Cara menggunakan Elasticsearch dengan ThinkPHP6
Jun 20, 2023 pm 12:09 PMDalam era Internet semasa, dengan pertumbuhan pesat data besar-besaran, enjin carian telah menjadi semakin penting. Sebagai enjin carian teks penuh berskala tinggi, Elasticsearch secara beransur-ansur menjadi pilihan pertama bagi pembangun untuk menyelesaikan masalah carian.
Artikel ini akan memperkenalkan cara menggunakan Elasticsearch dalam ThinkPHP6 untuk melaksanakan fungsi perolehan dan carian data, mari mulakan.
Langkah satu: Pasang elasticsearch-php
Gunakan komposer untuk memasang perpustakaan rasmi elasticsearch-php
composer require elasticsearch/elasticsearch
Selepas itu kita perlu menulis maklumat konfigurasi sambungan Elasticsearch dalam fail configuresearch.php , seperti berikut :
return [ 'host' => ['your.host.com'], 'port' => 9200, 'scheme' => 'http', 'user' => '', 'pass' => '' ];
Perhatikan bahawa tiada kata laluan di sini Apabila menggunakan dalam talian, anda perlu menambah kata laluan dan menyambung menggunakan https untuk memastikan sambungan selamat.
Langkah 2: Pasang laravel-scout
Laravel-scout ialah pakej sambungan carian teks penuh Eloquent ORM untuk Laravel Kami perlu memasangnya dalam ThinkPHP6 untuk mencapai penyepaduan Elasticsearch ia:
composer require laravel/scout
Langkah 3: Pasang pakej laravel-scout-elastic
Dalam ThinkPHP6, kita perlu menggunakan pakej sambungan laravel-scout-elastic untuk menyambung ke Elasticsearch. Begitu juga, gunakan arahan berikut untuk memasang:
composer require babenkoivan/scout-elasticsearch-driver:^7.0
Konfigurasikan pemacu pengakap dan elastik dalam app.php
return [ 'providers' => [ //... LaravelScoutScoutServiceProvider::class, ScoutElasticsearchElasticsearchServiceProvider::class, //... ], 'aliases' => [ //... 'Elasticsearch' => ScoutElasticsearchFacadesElasticsearch::class, //... ], ];
Seterusnya, konfigurasikan enjin carian model dalam configscout.php seperti berikut:
'searchable' => [ AppModelsModel::class => [ 'index' => 'model_index', 'type' => 'model_type' ], ],
Konfigurasi di atas menunjukkan bahawa kami menggunakan objek model Model::class untuk mendapatkan data dan mentakrifkan nama indeks yang sepadan dengan objek Model::class sebagai model_index dan jenis sebagai model_type.
Langkah 4: Tentukan logik carian
Kami menggunakan sifat Boleh Cari dalam kelas Model dan mengisytiharkan fungsi awam kepadaSearchableArray() fungsi, seperti berikut:
<?php namespace AppModels; use LaravelScoutSearchable; class Model extends Model { // 使用scout可搜索的trait use Searchable; // 返回可被搜索的模型數(shù)據(jù) public function toSearchableArray() { return [ 'title' => $this->title, 'content' => $this->content ]; }
fungsi toSearchableArray() digunakan untuk mengembalikan medan Data yang boleh dicari, di sini kami memberikan contoh medan tajuk dan kandungan.
Langkah 5: API berkaitan carian
Akhirnya kami menulis API berkaitan carian, seperti senarai hasil carian, statistik carian, dsb. Ini memerlukan kami mempunyai pemahaman tertentu tentang API Elasticsearch rasmi Untuk butiran, sila rujuk dokumentasi rasmi Elasticsearch.
Sebagai contoh, kod API senarai hasil carian mungkin seperti berikut:
use ElasticsearchClientBuilder; class SearchController extends Controller { //搜索結(jié)果列表 public function list(Request $request) { $searchQuery = $request->input('q'); //搜索關(guān)鍵字 //搜索操作 $elasticsearch = ClientBuilder::create()->setHosts(config('elasticsearch.host'))->build(); $response = $elasticsearch->search([ 'index' => 'model_index', // 索引名稱(chēng) 'type' => 'model_type', // 類(lèi)型 'size' => 1000, 'body' => [ 'query' => [ 'bool' => [ 'should' => [ ['match' => ['title' => $request->input('q')]], ['match' => ['content' => $request->input('q')]] ] ] ] ] ]); //格式化返回結(jié)果 $result = []; foreach ($response['hits']['hits'] as $hit) { //搜索評(píng)分 $hit['_score']; //搜索到的數(shù)據(jù) $result[] = $hit['_source']; } return json_encode($result); } }
Kod di atas menggunakan kelas ElasticsearchClientBuilder yang disediakan secara rasmi oleh Elasticsearch untuk membuat sambungan, pertanyaan kata kunci dan mendapatkan semula senarai keputusan. Anda boleh menggantikan $request->input('q')
dalam API ini dengan mana-mana kata kunci yang anda mahukan.
Artikel ini berakhir di sini Saya percaya anda pada asasnya boleh menggunakan Elasticsearch untuk melaksanakan fungsi carian. Jika anda menghadapi masalah dalam amalan, sila rujuk kepada dokumentasi rasmi atau bangkitkan isu untuk mendapatkan bantuan lanjut.
Atas ialah kandungan terperinci Cara menggunakan Elasticsearch dengan ThinkPHP6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat 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)

Fon kepala siri Galaxy Buds Samsung direka secara unik dan direka bentuk secara ergonomik, menjadikannya sangat selesa dipakai. Selain selesa dipakai, fon kepala siri Samsung Buds juga memberikan pengalaman kualiti bunyi yang sangat baik, yang telah menarik ramai pengguna. Seterusnya, kami akan memperkenalkan kepada anda tutorial penggunaan fon kepala Samsung Buds, terutamanya proses gandingan fon kepala Bluetooth dan telefon mudah alih Samsung Galaxy Buds Pro. Cara memasangkan set kepala Bluetooth Samsung Galaxy Buds Pro Memadankan dengan set kepala Samsung Buds adalah sangat mudah. ??Cuma ikut langkah di bawah untuk melengkapkan gandingan. Langkah pertama ialah menghidupkan fungsi Bluetooth telefon. Anda boleh menemui pilihan tetapan Bluetooth dalam antara muka tetapan telefon anda. Langkah 2: Letakkan GalaxyBu

Ramai rakan baru masih tidak tahu cara menggunakan Aisi Assistant, jadi editor akan membawakan anda tutorial tentang cara menggunakan Aisi Assistant yang memerlukannya boleh melihat dengan cepat. 1. Antara muka operasi, semak sama ada komponen yang diperlukan telah dipasang (seperti yang ditunjukkan dalam rajah di bawah); kepada Arahan untuk operasi yang berkaitan (seperti yang ditunjukkan dalam rajah di bawah); (seperti yang ditunjukkan dalam rajah di bawah) yang ditunjukkan); atas

Baru-baru ini, ramai rakan telah bertanya kepada editor cara menggunakan pautan magnet Thunder Seterusnya, mari kita pelajari tutorial menggunakan pautan magnet Thunder. Saya harap ia dapat membantu semua orang. Langkah 1: Pertama, kami membuka Thunder yang dipasang dan klik butang Baharu, seperti yang ditunjukkan dalam gambar. Langkah 2: Kemudian cari pautan magnet di Internet, salin dan tampalkannya ke lokasi yang ditunjukkan dalam gambar di bawah, dan klik OK, seperti yang ditunjukkan dalam gambar. Langkah 3: Direktori muat turun terperinci sumber muncul Kami menyemak sumber yang hendak dimuat turun, pilih direktori storan dan klik Muat Turun Sekarang, seperti yang ditunjukkan dalam rajah. Langkah 4: Akhir sekali, kami menunggu sumber untuk dimuat turun, seperti yang ditunjukkan dalam gambar. Di atas ialah keseluruhan kandungan cara menggunakan pautan magnet Thunder yang dibawa oleh editor kepada anda. Saya harap ia dapat membantu semua orang.

exescope ialah alat penyuntingan sumber program yang berkuasa yang boleh menukar versi bahasa Inggeris perisian kepada versi Cina Jadi bagaimana untuk menggunakan exescope yang baru dimuat turun? Jika anda juga pengguna baru, datang dan lihat tutorial terperinci di bawah. Tutorial penggunaan Exescope 1. Buka eXeScope, klik pada fail di sudut kiri atas, klik [Buka] dalam pilihan pop timbul, dan pilih fail yang anda ingin buka. 2. Selepas membuka perisian, anda boleh melihat banyak kawalan. 3. Anda boleh mengubah suai secara langsung saiz, kedudukan dan kandungan setiap kawalan dengan memasukkan data, atau anda boleh terus klik pada editor kotak dialog di atas dan seret kawalan pada antara muka program secara terus. Selepas melaraskan kawalan, klik [Simpan].

Untuk menjalankan projek ThinkPHP, anda perlu: memasang Komposer untuk mencipta projek, masukkan direktori projek dan laksanakan php bin/console serve;

Pada masa kini, ramai rakan akan menggunakan perisian kawalan jauh Sunflower, tetapi masih ramai rakan yang tidak tahu cara menggunakan perisian kawalan jauh Sunflower Hari ini, saya akan memperkenalkan secara terperinci semua tutorial tentang cara menggunakan perisian kawalan jauh Sunflower harap dapat membantu semua. Langkah 1: Mula-mula buka perisian kawalan jauh Sunflower dan pastikan perisian itu berjaya disambungkan ke pelayan (seperti yang ditunjukkan dalam gambar). Langkah 2: Kemudian masukkan kod pengenalan Bunga Matahari jauh (seperti yang ditunjukkan dalam gambar). Langkah 3: Anda boleh terus memasukkan kod pengesahan jauh untuk sambungan jauh tanpa pengawasan, atau klik untuk mengesahkan sambungan melalui terminal jauh tanpa kod pengesahan (seperti yang ditunjukkan dalam rajah). Langkah 4: Kemudian klik "Sambungan Jauh", dan kawalan desktop akan mula bersambung ke desktop jauh (seperti yang ditunjukkan dalam gambar). Langkah 5: Selepas sambungan selesai, sistem secara automatik memasuki persekitaran desktop komputer jauh.

ThinkPHP mempunyai berbilang versi yang direka untuk versi PHP yang berbeza. Versi utama termasuk 3.2, 5.0, 5.1 dan 6.0, manakala versi kecil digunakan untuk membetulkan pepijat dan menyediakan ciri baharu. Versi stabil terkini ialah ThinkPHP 6.0.16. Apabila memilih versi, pertimbangkan versi PHP, keperluan ciri dan sokongan komuniti. Adalah disyorkan untuk menggunakan versi stabil terkini untuk prestasi dan sokongan terbaik.

Little Black Box ialah platform permainan yang sangat mudah digunakan, jadi bagaimana anda menggunakan perisian ini? Pengguna akan menghadapi banyak masalah apabila menggunakan perisian ini dan mempunyai penyelesaian yang berbeza. Ringkasan tutorial tentang penggunaan pelbagai fungsi kotak hitam kecil ini akan memberitahu anda cara menggunakannya. Berikut adalah pengenalan terperinci, jadi lihat! Tutorial menggunakan Little Black Box [2024-01-31] ????Cara menebus cdkey yang dibeli dari Little Black Box [2024-01-31] ????Cara menyimpan permainan yang dibeli dari Little Black Box ke dalam Steam [2024-01- 31] ??CDkey yang dibeli dari Little Black Box boleh dipulangkan.
