လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP နှင့် elastinsangearch ကိုအသုံးပြုပြီးအနီးကပ်အချိန်ရှာဖွေခြင်းကိုမည်သို့အကောင်အထည်ဖော်ရမည်နည်း

PHP နှင့် elastinsangearch ကိုအသုံးပြုပြီးအနီးကပ်အချိန်ရှာဖွေခြင်းကိုမည်သို့အကောင်အထည်ဖော်ရမည်နည်း

M66 2025-06-21

PHP နှင့် elastinsangearch ကိုအသုံးပြုပြီးအနီးကပ်အချိန်ရှာဖွေခြင်းကိုမည်သို့အကောင်အထည်ဖော်ရမည်နည်း

အထူးသဖြင့်အချက်အလက်အမြောက်အများနှင့်တစ်ပြိုင်နက်တည်းမေးခွန်းများနှင့်ရင်ဆိုင်ရသောအခါခေတ်သစ်ဝက်ဘ်အပလီကေးရှင်းများတွင်ရှာဖွေရေးလုပ်ဆောင်နိုင်မှုတွင်မရှိမဖြစ်လိုအပ်သည်။ ရိုးရာဒေတာဘေ့စ်စုံစမ်းမှုနည်းလမ်းများသည်များသောအားဖြင့်အင်အားကြီးသောဖြန့်ဝေထားသောရှာဖွေရေးယန္တရားအဖြစ်အများအားဖြင့်ဤလိုအပ်ချက်များကိုဖြည့်ဆည်းပေးနိုင်သည်။

elasticsarch နှင့် php client များကို install လုပ်ပါ

ပထမ ဦး စွာသင်သည် elasticseart ပေါ်တွင် elasticsearch တွင် install လုပ်ရန်လိုအပ်သည်။ နောက်ဆုံးပေါ် installation package version version ကိုဒေါင်းလုပ်ဆွဲရန်နှင့်သက်ဆိုင်ရာစာရွက်စာတမ်းများအရသိရသည်ကို install လုပ်ရန်တရားဝင်ဝက်ဘ်ဆိုက်ကိုသင်ဝင်ရောက်ကြည့်ရှုနိုင်သည်။

ထို့နောက် PHP ၏ elast ခွဲကြက်ရှင်စာကြည့်တိုက်ကိုတပ်ဆင်ရန်တေးရေးဆရာကိုအသုံးပြုပါ။ install လုပ်ရန်အောက်ပါ command ကို run ပါ။

တေးရေးဆရာ elastinsarch / elast ခွဲကြက်ခြံလိုအပ်သည်

elasticsearch ကိုဆက်သွယ်ပါ

PHP Code တွင်သင် elasticsearch client ၏ဥပမာတစ်ခုကိုဖန်တီးရန်နှင့် elastsangearch server နှင့်ဆက်သွယ်ရန်လိုအပ်သည်။ ဒီမှာနမူနာကုဒ်တစ်ခုပါ။

'ရောင်းချသူ / autoload.php လိုအပ်သည်';
$ client = elasticsangcrientbluilderbluilderbluilderbluilder :: ဖန်တီးခြင်း ()> တည်ဆောက်ခြင်း (),

အညွှန်းကိန်းများနှင့်မြေပုံများကိုဖန်တီးပါ

ရှာဖွေခြင်းမပြုမီ, သင်အညွှန်းကိန်းနှင့်မြေပုံများကိုဖန်တီးရန်လိုအပ်သည်။ elastancack ကွကျသိမ်အခွင့်အ 0 ယ်များတွင်ဒေတာဘေ့စ်ရှိဇယားများနှင့်ညီမျှသည်။ ဤတွင်အညွှန်းကိန်းတစ်ခု ဖန်တီး. မြေပုံကိုသတ်မှတ်ခြင်း၏ဥပမာတစ်ခုဖြစ်သည်။

$ params = [
    'Index' => 'My_index',
    'ခန္ဓာကိုယ်' => [
        'Mappines' => [
            'Properties' => [
                'title' => ['type' => 'Text']],
                'အကြောင်းအရာ' => ['type' => 'type's]]
            ]
        ]
    ]
];
$ တုံ့ပြန်မှု = $ client-> ညွှန်းကိန်း () -> Create (Params);

အထက်ပါကုဒ်သည် "My_index" ဟုခေါ်သောအညွှန်းကိန်းကိုဖန်တီးပြီး "ခေါင်းစဉ်" နှင့် "အကြောင်းအရာ" နယ်ပယ်များအတွက်စာသားအမျိုးအစားများကိုမြေပုံထုတ်ပေးသည်။ သင်၏လိုအပ်ချက်များနှင့်အညီလယ်ကွင်းများနှင့်ဒေတာအမျိုးအစားများကိုစိတ်ကြိုက်ပြုလုပ်နိုင်သည်။

စာရွက်စာတမ်းတစ်ခုထည့်ပါ

ထို့နောက်သင်ဒေတာကိုအညွှန်းကိန်းထဲသို့ထည့်ရန်လိုအပ်သည်။ အောက်ပါကုဒ်သည် "ခေါင်းစဉ်" နှင့် "အကြောင်းအရာ" နယ်ပယ်များပါ 0 င်သည့်စာရွက်စာတမ်းများကိုအညွှန်းကိန်းသို့ထည့်သွင်းရန်မည်သို့ထည့်သွင်းရမည်ကိုပြသသည်။

$ params = [
    'Index' => 'My_index',
    'ခန္ဓာကိုယ်' => [
        'title' => 'ဥပမာခေါင်းစဉ်',
        'Content' => 'ဥပမာအကြောင်းအရာ'
    ]
];
$ တုံ့ပြန်မှု = $ client-> အညွှန်းကိန်း ($ params);

ဤကုဒ်သည် "TONE" နှင့် "အကြောင်းအရာ" fields များပါ 0 င်သည့်စာရွက်စာတမ်းတစ်ခုကို "My_index" အညွှန်းကိန်းသို့ထည့်သွင်းထားသည့်စာရွက်စာတမ်းတစ်ခုကိုထည့်သွင်းထားသည်။

ရှာဖွေမှုရှာဖွေမှုတစ်ခုဖန်တီးပါ

ဒေတာများကိုထည့်ပြီးတာနဲ့အချက်အလက်များကိုပြန်လည်ရယူရန်ရှာဖွေမှုရှာဖွေမှုတစ်ခုကိုသင်ဖန်တီးနိုင်သည်။ ဤတွင်ရိုးရိုးရှာဖွေရေးမေးမြန်းမှုဥပမာတစ်ခု -

$ params = [
    'Index' => 'My_index',
    'ခန္ဓာကိုယ်' => [
        'query' => [
            'Match' => [
                'title' => 'sign'
            ]
        ]
    ]
];
$ တုံ့ပြန်မှု = $ client-> ရှာဖွေရေး ($ params);
<p>foreach ($ တုံ့ပြန်မှု [&#39;hits&#39;] [&#39;hits&#39;] [&#39;hits] $ hit အဖြစ်)<br>
ECHO $ ​​hit [&#39;_ source&#39;] [&#39;title&#39;] [&#39;title&#39;] ။ "\ n";<br>
}<br>

ဤကုဒ်သည် "ခေါင်းစဉ်" နယ်ပယ်အတွက်ပွဲစဉ်ရှာဖွေမှုကိုဖန်တီးပြီးကိုက်ညီသောစာရွက်စာတမ်းခေါင်းစဉ်ကိုထုတ်ပေးသည်။

အကျဉ်းချုပ်

PHP နှင့် elast ခလုတ်ကိုပေါင်းစပ်ခြင်းအားဖြင့်သင်သည်အချိန်နှင့်တပြေးညီရှာဖွေရေးစွမ်းရည်ကိုလျင်မြန်စွာနှင့်ထိရောက်စွာထိရောက်နိုင်သည်။ ဤဆောင်းပါးသည် elast ခလုတ်ကိုချိတ်ဆက်ရန် elast ခလုတ်ကိုချိတ်ဆက်ရန်နှင့် conflictsangsearch ကို install လုပ်ခြင်းနှင့်ပြင်ဆင်ခြင်း, elast ခလုတ်ကို 0 က်ဘ်အပလီကေးရှင်းကို 0 င်ရောက်ခြင်းနှင့်ရှာဖွေမှုအတွေ့အကြုံရရှိရန်မည်သို့ပိုမိုကောင်းမွန်သောနားလည်မှုကိုပိုမိုနားလည်သဘောပေါက်ရန်ဤဆောင်းပါးသည်သင်ပိုမိုကောင်းမွန်သောနားလည်မှုကိုပိုမိုနားလည်ရန်ကူညီနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။