ရှာဖွေရေးလုပ်ငန်းများသည်ခေတ်သစ် web application များတွင်အဓိကအခန်းကဏ် play မှပါ 0 င်သည်။ အချက်အလက်ပမာဏတွင်မြင့်တက်လာခြင်းဖြင့်အသုံးပြုသူများသည်ရှာဖွေမှုရလဒ်များ၏တိကျမှုနှင့်ဆက်စပ်မှုအပေါ်ပိုမိုမြင့်မားသောလိုအပ်ချက်များကိုတင်ပြကြသည်။ စွမ်းဆောင်ရည်မြင့်ရှာဖွေမှုအတွေ့အကြုံအောင်မြင်ရန် developer များသည်များသောအားဖြင့်ထိရောက်သောစာသားရှာဖွေရေးအင်ဂျင်ကိုပေါင်းစပ်ရန်ရွေးချယ်ကြသည်။ Manticore Search သည်အစာရှောင်ခြင်းနှင့်တိကျသောရှာဖွေမှုအတွက်ဒီဇိုင်းပြုလုပ်ထားသော open source ဖြေရှင်းချက်ဖြစ်သည်။ PHP နှင့် Manticore ရှာဖွေမှုကို အသုံးပြု. အစွမ်းထက်သောရှာဖွေရေး function ကိုမည်သို့တည်ဆောက်ရမည်ကိုဤဆောင်းပါးကရှင်းပြပါမည်။
Manticore Search သည် sphinx အခြေခံသောဌာနခွဲစီမံကိန်းဖြစ်သည်။ ၎င်းသည်စာသားအပြည့်, fuzzy ကိုက်ညီခြင်း, စိတ်ကြိုက်လက်မှတ်ရေးထိုးခြင်းယန္တရား, JSON အမျိုးအစားများ, ချမ်းသာသော API interface ကိုထောက်ပံ့ခြင်းအားဖြင့် Manticore Search သည် php application များနှင့်လွယ်ကူစွာထိရောက်သောရှာဖွေရေးဖြေရှင်းနည်းများကိုတည်ဆောက်ရန် PHP applications များနှင့်အလွယ်တကူပေါင်းစပ်နိုင်သည်။
တရားဝင်စာရွက်စာတမ်းများအရ Micianore ၏ တရားဝင်ဝက်ဘ်ဆိုက် သို့ 0 င်ရောက်ခြင်းနှင့်တပ်ဆင်ခြင်းနှင့်ပြင်ဆင်ခြင်းနှင့်ပြင်ဆင်ခြင်းနှင့်ဖွဲ့စည်းတည်ဆောက်ပုံကိုအပြီးသတ်ပြုလုပ်နိုင်သည်။ တပ်ဆင်မှုပြီးပြည့်စုံပြီးပါက 0 န်ဆောင်မှုကိုပုံမှန်လည်ပတ်နေကြောင်းသေချာပါစေ။
ရှာဖွေရေးလုပ်ဆောင်ချက်တစ်ခုတည်ဆောက်ခြင်းတွင်ပထမခြေလှမ်းမှာအညွှန်းတစ်ခုဖန်တီးရန်ဖြစ်သည်။ အညွှန်းကိန်းများသည်စနစ်တကျအချက်အလက်များကိုသိမ်းဆည်းရန်အသုံးပြုသောအဓိကအစိတ်အပိုင်းများဖြစ်သည်။ ဤတွင်အညွှန်းကိန်းတစ်ခုဖန်တီးရန်အတွက် PHP နမူနာကုဒ်ဖြစ်သည်။
<?php
$index = new ManticoreSearchIndex($client, 'products');
$index->create([
'product_id' => ['type' => 'integer', 'indexed' => true, 'docvalues' => true],
'name' => ['type' => 'text', 'indexed' => true, 'tokenized' => true],
'price' => ['type' => 'float'],
]);
?>
အထက်ဖော်ပြပါကုဒ်သည် "ထုတ်ကုန်များ" ဟုခေါ်သော "ထုတ်ကုန်များ" ဟုခေါ်သော "ထုတ်ကုန်များ" ဟုခေါ်သောအညွှန်းကိန်းကိုဖန်တီးသည်။ သင်၏စီးပွားရေးလိုအပ်ချက်များနှင့်အညီကွက်ကွက်ကွင်းကွင်းများကိုသင်ထပ်ထည့်နိုင်သည်။
စာရွက်စာတမ်းများသည်အညွှန်းကိန်းတွင်တိကျသောဒေတာပစ္စည်းများဖြစ်ပြီးစာရွက်စာတမ်းတစ်ခုစီသည်ရှာဖွေမှုအရာဝတ်ထုကိုကိုယ်စားပြုသည်။ အောက်ဖော်ပြပါကုဒ်သည်ကုန်ပစ္စည်းစာရွက်စာတမ်းတစ်ခုကိုအညွှန်းသို့မည်သို့ထည့်သွင်းရမည်ကိုပြသသည်။
<?php
$document = new ManticoreSearchDocument($index);
$document->setId(1);
$document->setFields([
'product_id' => 1,
'name' => 'iPhone 11',
'price' => 999.99,
]);
$index->addDocuments([$document]);
?>
သငျသညျကြိုက်သလောက်စာရွက်စာတမ်းများကိုသင်ကြိုက်သလောက်ထည့်သွင်းနိုင်ပြီးစာရွက်စာတမ်းတစ်ခုစီ၏နယ်ပယ်များသည်အညွှန်းကိန်းနှင့်အဓိပ္ပါယ်နှင့်ကိုက်ညီသင့်သည်။
စာရွက်စာတမ်းထည့်ပြီးတဲ့နောက်, ရှာဖွေမှုရှာဖွေမှုကိုကျွန်ုပ်တို့ကွပ်မျက်နိုင်သည်။ အောက်ပါ PHP ဥပမာသည်ရိုးရှင်းသောသော့ချက်စာလုံးရှာဖွေရေးလုပ်ငန်းစဉ်ကိုပြသသည်။
<?php
$search = new ManticoreSearchSearch($client, ['index' => 'products']);
$result = $search->search('iPhone');
foreach ($result['hits'] as $hit) {
echo $hit['product_id'] . ': ' . $hit['name'] . ' - ' . $hit['price'] . "\n";
}
?>
ဤကုဒ်သည် "iPhone" သော့ချက်စာလုံးပါ 0 င်သည့်ထုတ်ကုန်အချက်အလက်အားလုံးကိုထုတ်လွှင့်ပြီး format နှင့် format ဖြင့်ပြုလုပ်လိမ့်မည်။ စျေးနှုန်း, ပုဂံ, sorting စသည့်ရှာဖွေမှုစံနှုန်းများကိုလည်းသင်ချဲ့ထွင်နိုင်သည်။
ရှာဖွေမှုအရည်အသွေးကိုထပ်မံတိုးတက်စေရန် Manticore Search သည်ရလဒ်ကိုပိုမိုကောင်းမွန်စေရန်ယန္တရားအမျိုးမျိုးကိုထောက်ပံ့ပေးသည်။ နည်းတစ်နည်းမှာလယ်ကွင်း၏အလေးချိန်ကိုချိန်ညှိခြင်းအားဖြင့် sorting algorithm ကိုလွှမ်းမိုးရန်ဖြစ်သည်။
<?php
$index->update([
'base' => 'products',
'expr' => 'rank_expr',
'ranker' => 'expr',
]);
?>
ထုတ်ကုန်များ၏အာဏာအလေးချိန်ကိုဖော်ပြသည့်အချက်အလက်များထက်ထုတ်ကုန်များ၏အလေးချိန်ကိုပိုမိုမြင့်မားစေရန်, ထို့အပြင် Manticore သည် Boolean Query, Search, ဆင်တူခြင်းစသည်တို့ကဲ့သို့သောအဆင့်မြင့်လုပ်ဆောင်မှုများကိုထောက်ခံသည်။
PHP နှင့် Manticore ရှာဖွေရေးကိုပေါင်းစပ်ခြင်းအားဖြင့် developer များသည်အားကြီးသောနှင့်ဖျော်ဖြေရေးရှာဖွေရေး 0 န်ဆောင်မှုများကိုလျင်မြန်စွာတည်ဆောက်နိုင်သည်။ ဤဆောင်းပါးသည်ရှာဖွေရေးအင်ဂျင်များကိုမည်သို့တပ်ဆင်ရမည်, အညွှန်းများကိုဖန်တီးရန်, စာရွက်စာတမ်းများကိုထည့်သွင်းခြင်း, စာရွက်စာတမ်းများထည့်သွင်းခြင်း, အမှန်တကယ် applications များအနေဖြင့်သီးခြားစီးပွားရေးလုပ်ငန်းများအပေါ် အခြေခံ. ရှာဖွေရေးမဟာဗျူဟာများကိုညှိနှိုင်းဆောင်ရွက်ခြင်းသည်အသုံးပြုသူရှာဖွေမှုအတွေ့အကြုံကိုသိသိသာသာတိုးတက်စေလိမ့်မည်။