မျက်မှောက်ခေတ် Web Development တွင်ကိုယ်ပိုင်ရှာဖွေခြင်းအတွေ့အကြုံသည်အသုံးပြုသူပါ 0 င်မှုနှင့်ပြောင်းလဲခြင်းနှုန်းကိုတိုးမြှင့်ရန်အဓိကနည်းလမ်းတစ်ခုဖြစ်လာသည်။ စွမ်းဆောင်ရည်မြင့်ရှာဖွေရေးအင်ဂျင်များကိုပေါင်းစပ်ခြင်းအားဖြင့် developer များအသုံးပြုသူများသည်သုံးစွဲသူများ၏အပြုအမူသို့မဟုတ်အကျိုးစီးပွား ဦး စားပေးမှုအပေါ် အခြေခံ. ပိုမိုတိကျသောအကြောင်းအရာကိုက်ညီမှုကိုပေးနိုင်သည်။ အသုံးပြုသူ preference filtering ကိုအထောက်အကူပြုသောရှာဖွေရေးအင်္ဂါရပ်များတည်ဆောက်ရန် PHP နှင့် Manticore Search ကိုမည်သို့အသုံးပြုရမည်ကိုကျွန်ုပ်တို့ပြသမည်။
ပထမ ဦး စွာ Micianore ရှာဖွေမှုဗားရှင်းကိုသင်ဒေါင်းလုပ်လုပ်ပြီးတပ်ဆင်ထားကြောင်းသေချာအောင်လုပ်ပါ။ တပ်ဆင်မှုပြီးစီးပြီးနောက် configuration file ကိုတည်းဖြတ်ပြီးနောက် Real-time index ပံ့ပိုးမှုစင်တာကိုဖွင့်ပြီးနားထောင်ခြင်းဆိပ်ကမ်းများ, မှတ်တမ်းလမ်းကြောင်းများစသည့် parameters များကိုသတ်မှတ်ရန်ပြင်ဆင်ပါ။
ရှာဖေှခြင်း { နားထောင် = 127.0.0.1.9306 Binlog_path = / var / vi / manticore pid_file = /var/run/mantorore/searchd.pid log = /Var/Log/mantore/searchd.log Query_log = /Var/Log/manticore/query.log search_logs = 1 rt_mem_limit = 512m } index my_index { = RT အမျိုးအစား rt_attr_string = နာမည် rt_attr_uint = အသက်အရွယ် }
Configuration ပြီးဆုံးပြီးနောက်ချိန်ညှိချက်များကိုအကျိုးသက်ရောက်စေရန် Manticore ရှာဖွေရေး 0 န်ဆောင်မှုကိုပြန်လည်စတင်ပါ။
ရှာဖွေမှု function ကိုမတည်ဆောက်ခင်မှာသုံးစွဲသူဒေတာကိုအညွှန်းကိန်းကိုရေးဖို့လိုတယ်။ အောက်ပါဥပမာသည် SPHINXQL ၏ PHP Driver ကို အသုံးပြု. ရှာဖွေရေး 0 န်ဆောင်မှုကိုမည်သို့ချိတ်ဆက်ရမည်ကိုပြသသည်။
<?php require_once('vendor/autoload.php'); use Foolz\SphinxQL\Drivers\Connection; use Foolz\SphinxQL\SphinxQL; $connection = new Connection(); $connection-> Setparams (['host' => '127.0.0.1', 'Port' => 9306]); $ အညွှန်းကိန်း = 'my_index'; $ အင်ဂျင် = sphinxql အသစ် ($ ဆက်သွယ်မှု); $ အင်ဂျင် -> setconnection ($ ဆက်သွယ်မှု); $ အင်ဂျင် -> စုံစမ်းမှု ("truncate rtindex $ အညွှန်းကိန်း") -> execute (); $ အင်ဂျင် ("နာမည်, အသက်အရွယ်) တန်ဖိုးများ ('Alice's 25), (' Bob ', 30), (' Charlie ', 35),
ဤအဆင့်သည်မူလအချက်အလက်များကိုရှင်းလင်းပြီးအသုံးပြုသူသတင်းအချက်အလက်အသစ်များကိုတင်သွင်းခြင်းအတွက်အခြေခံရှာဖွေမှုများအတွက်အခြေခံအုတ်မြစ်ချသည်။
အသုံးပြုသူမှသတ်မှတ်ထားသည့်အသက်အရွယ်ကို အခြေခံ. ရှာဖွေရန်ကျွန်ုပ်တို့ရှာဖွေရန်လိုအပ်သည်ဆိုပါစို့။ အောက်ပါလုပ်ဆောင်ချက်များကိုမှတစ်ဆင့်မေးမြန်းမှုထုတ်ပြန်ချက်များကိုဖြစ်ပေါ်စေသည်။
<?php function buildUserPreferenceQuery($preferences) { global $connection; $index = 'my_index'; $engine = new SphinxQL($connection); $engine-> setconnection ($ ဆက်သွယ်မှု); $ query = $ engine-> query ("$ အညွှန်းကိန်းမှ Select * Select *"); foreach ($ key => $ တန်ဖိုးကိုအဖြစ် $ preferences) { if ($ key == 'min_age') { $ query- >> 'အသက်အရွယ်', '> =', ', $ တန်ဖိုး); } ualif ($ key == 'max_age') { $ query- >>> 'အသက်အရွယ်', '<=', $ တန်ဖိုး); } } $ query-> execute (), }
ကျွန်ုပ်တို့သည်ဤလုပ်ဆောင်မှုအတွက်အသုံးပြုသူ preference အချက်အလက်များအစုတခုတွင်ကူးယူပြီး filtered ရလဒ်ကိုထုတ်ယူနိုင်သည်။
<?php $preferences = [ 'min_age' => 25, 'Max_age' => 35 ]; $ ရလဒ် = builduserporative ရိယာ ($ preferences); foreach ($ ရလဒ် $ အတန်းအဖြစ်) { ပဲ့တင်သံ "အမည်:" ။ $ အတန်း ['name'] ။ "အသက် -" ။ $ အတန်း ['အသက်'] ။ "\ n"; }
ဤဆောင်းပါး၏နမူနာများမှတဆင့်ကျွန်ုပ်တို့သည်ပတ် 0 န်းကျင်ပြုပြင်ပြောင်းလဲမှု, ဒေတာတင်သွင်းမှုနှင့်မေးမြန်းမှုဆောက်လုပ်ခြင်းမှလုပ်ငန်းစဉ်တစ်ခုလုံးကိုပြီးစီးခဲ့သည်။ PHP နှင့် Manticore ရှာဖွေရေးကိုပေါင်းစပ်ခြင်း, သုံးစွဲသူများ၏ကိုယ်ရေးကိုယ်တာလိုအပ်ချက်များကိုဖြည့်ဆည်းပေးနိုင်သည့်ရှာဖွေရေးလုပ်ငန်းများကိုထိရောက်စွာအကောင်အထည်ဖော်နိုင်ပြီးစနစ်၏ထောက်လှမ်းရေးအဆင့်ကိုတိုးတက်စေနိုင်သည်။ သင်အညွှန်းကိန်းများကိုဆက်လက်ချဲ့ထွင်နိုင်ပြီးပိုမိုရှုပ်ထွေးသောစီးပွားရေးအခြေအနေများနှင့်ကိုက်ညီရန်စာသားရှာဖွေခြင်း, ပံ့ပိုးမှုစင်တာသို့မဟုတ် paging ။