PHP တွင် Preg_replace နှင့် Preg_replace_callback_array သည်ပုံမှန်အစားထိုးလုပ်ငန်းများအတွက်လုပ်ဆောင်ချက်များဖြစ်သည်။ သူတို့ကဆင်တူပုံရတယ်, ဒါပေမဲ့သူတို့ရဲ့ application အခြေအနေတွေနဲ့အပြုအမူတွေကကွဲပြားတယ်။ ဤဆောင်းပါးသည်သင့်အားဤလုပ်ဆောင်ချက်နှစ်ခုကိုပိုမိုနက်ရှိုင်းစွာနားလည်စေရန်, Preg_replace_Callback_Array သို့ preg_replace_callback_array သို့ချောချောမွေ့မွေ့အကူးအပြောင်းကိုကူညီပါလိမ့်မည်။
Preg_replace သည် PHP တွင်အသုံးအများဆုံးပုံမှန်အစားထိုးလုပ်ဆောင်ချက်ဖြစ်သည်။ ၎င်း၏ function သည်ပုံမှန်ပုံစံနှင့်ကိုက်ညီသော string တစ်ခု၏အစိတ်အပိုင်းတစ်ခုကိုရှာဖွေပြီးအစားထိုးအကြောင်းအရာများဖြင့်အစားထိုးရန်ဖြစ်သည်။
$pattern = '/\d+/'; // ကိုက်ညီနံပါတ်များ
$replacement = 'NUMBER';
$string = 'There are 123 apples and 456 oranges.';
$result = preg_replace($pattern, $replacement, $string);
echo $result;
ထုတ်လုပ်မှု -
There are NUMBER apples and NUMBER oranges.
ဤဥပမာတွင် Preg_replace သည် ဂဏန်းအပိုင်းကိုနံပါတ်နှင့်ကြိုးဖြင့်အစားထိုးသည်။ ၎င်း၏ parameters တွေကိုပါဝင်သည်:
ပုံမှန် mode ကို $ ပုံစံ
အစားထိုးအကြောင်းအရာ $ အစားထိုး
string ကို $ string ကို ရိုက်ထည့်ပါ
Preg_replace သည်ရိုးရှင်းသောအစားထိုးလုပ်ငန်းများအတွက်သင့်တော်သည်။ သို့သော်အစားထိုးယုတ္တိဗေဒသည်ပိုမိုရှုပ်ထွေးသောအခါသို့မဟုတ်ကွဲပြားခြားနားသောပွဲများအတွက်ကွဲပြားခြားနားသောအပြောင်းအလဲနဲ့လိုအပ်ပါတယ်။
Preg_replace_callback_array သည် PHP 5.5 တွင်မိတ်ဆက်ပေးသော function တစ်ခုဖြစ်သည်။ ၎င်းသည်ပုံမှန်အစားထိုးခြင်းကိုကိုင်တွယ်ရန်ပိုမိုပြောင်းလွယ်ပြင်လွယ်သောနည်းလမ်းဖြစ်သည်။ ၎င်း၏အဓိကအင်္ဂါရပ်မှာ၎င်းသည်ပုံမှန်စကားရပ်ပုံစံတစ်ခုစီအတွက်ပိုမိုရှုပ်ထွေးသောရလဒ်များကိုပိုမိုရှုပ်ထွေးစေသောရလဒ်များပြုလုပ်ရန်သင့်အား callback function ကိုသတ်မှတ်ရန်ခွင့်ပြုသည်။
$patterns = [
'/\d+/' => function($matches) {
return 'NUMBER';
},
'/apple/' => function($matches) {
return 'FRUIT';
}
];
$string = 'There are 123 apples and 456 oranges.';
$result = preg_replace_callback_array($patterns, $string);
echo $result;
ထုတ်လုပ်မှု -
There are NUMBER FRUIT and 456 oranges.
ဤဥပမာတွင် Preg_replace_callback_array သည် မတူညီသောပုံမှန်ပုံစံများအတွက်မတူညီသော callback function များကိုသတ်မှတ်ရန်ခွင့်ပြုသည်။ ပုံစံများကို array တွင်ပုံမှန်ပုံစံတစ်ခုစီသည် calmback function နှင့်ကိုက်ညီသည်။ callback function သည်ပွဲစဉ်ရလဒ်ကိုရရှိသည် ဒေါ်လာပွဲများ နှင့်အစားထိုးတန်ဖိုးကိုပြန်လည်ရရှိခဲ့သည်။
ဤနည်းလမ်းသည် preg_replace ထက် ပို. ပြောင်းလွယ်ပြင်လွယ်ရှိပြီးရှုပ်ထွေးသောအစားထိုးယုတ္တိဗေဒကိုကိုင်တွယ်ရန်သင့်တော်သည်။ ဥပမာအားဖြင့်, သင်ဟာရိုးရိုးရှင်းရှင်းစွာအစားထိုးခြင်းအတွက်ကန့်သတ်ထားခြင်းမရှိဘဲကိုက်ညီသောအကြောင်းအရာများအပေါ် အခြေခံ. ကွဲပြားခြားနားသောအပြောင်းအလဲကိုပြုလုပ်နိုင်သည်။
Preg_replace ကို ရိုးရှင်းသောအစားထိုးလုပ်ငန်းများအတွက်အသုံးပြုသည်။ အကယ်. သင်သည်ကိုက်ညီသောအပိုင်းကိုကြိုးကြိုးဖြင့်အစားထိုးရန်လိုအပ်လျှင်အလွန်ထိရောက်ပါသည်။
Preg_replace_callback_array သည် မတူညီသောကိုက်ညီမှုပုံစံများအတွက်မတူညီသော callback လုပ်ဆောင်ချက်များကိုသတ်မှတ်ရန်ခွင့်ပြုသည်, ထို့ကြောင့်၎င်းသည်ပိုမိုရှုပ်ထွေးသောအစားထိုးခြင်းဆိုင်ရာလိုအပ်ချက်များကိုကိုင်တွယ်နိုင်သည်
စွမ်းဆောင်ရည်ဘက်မှာ Preg_replace_Replace_callback_array ထက်အနည်းငယ်ပိုမြန်လိမ့်မည်, အဆုံးစွန်သောပွဲတစ်ပွဲတစ်ခုစီကိုကိုင်တွယ်ရန် callback function ကိုခေါ်ဆိုရန်လိုအပ်သည် ။
အစားထိုးယုတ္တိဗေဒသည်ရိုးရှင်းလျှင် Preg_replace သည် ပိုမိုထိရောက်သောရွေးချယ်မှုဖြစ်သင့်သည်။
preg_replace_callback_array ကို သုံးသောအခါသင်ကွဲပြားခြားနားသော retracement logics ကွဲပြားခြားနားသော callback functions များတွင် coverier ကိုပိုမိုလွယ်ကူစေရန်နှင့်ထိန်းသိမ်းရန်ပိုမိုလွယ်ကူစေသည်။
Preg_replace ကိုအသုံးပြုပြီးတဲ့အခါမှာအစားထိုးယုတ္တိဗေဒဟာရှုပ်ထွေးလာရင်ကုဒ်ရဲ့ဖတ်နိုင်မှုနဲ့ထိန်းသိမ်းမှုကိုလျော့နည်းသွားစေနိုင်တယ်။
အကယ်. သင်သည် Preg_replace ကို အသုံးပြု. ပိုမိုရှုပ်ထွေးသောအစားထိုးလိုအပ်ချက်များသည်သင်၏စီမံကိန်းတွင်ပိုမိုများပြားလာလာပါက PREG_replace သည် လိုအပ်ချက်များကိုဖြည့်ဆည်းပေးနိုင်သည်ဟုသင်ခံစားရနိုင်သည်။ ဤအချိန်တွင်သင်သည် Preg_replace_callback_array သို့ကူးပြောင်းရန်ကြိုးစားနိုင်သည်။ အသွင်ကူးပြောင်းမှုအဆင့်များအတွက်အောက်ပါအချက်များကိုဖတ်ရှုပါ။
ရှိပြီးသားကုဒ်ကိုဆန်းစစ်ပါ ။ Preg_replace ကို လက်ရှိအသုံးပြုထားသည့်နေရာကိုကြည့်ပါ။
Design Callback functions : ရှုပ်ထွေးသောအစားထိုးယုတ္တိဗေဒကိုအစားထိုးရန်လိုအပ်သည့်အစားထိုးနည်းလမ်းများကိုကိုင်တွယ်ရန် (သို့) တစ်ခုထက်ပိုသော dealback function များကိုဒီဇိုင်းဆွဲခြင်းလုပ်ငန်းများကိုဒီဇိုင်းဆွဲခြင်း။
Code ကိုအစားထိုးပါ ။ Preg_replace_callback_Array နှင့် Preg_replace_Callback_Array နှင့်အစားထိုး။ callback function ကိုပါပုံမှန်ပုံစံကိုနှိပ်ပါ။
ကျွန်ုပ်တို့တွင်အောက်ပါကုဒ်ရှိသည်ဆိုပါစို့, နံပါတ်နှင့်အသီးအမည်ကို preg_replace ဖြင့်အစားထိုးခြင်း။
$pattern = '/(\d+)|(apple)/';
$replacement = function($matches) {
if ($matches[1]) {
return 'NUMBER';
} elseif ($matches[2]) {
return 'FRUIT';
}
};
$string = 'I have 123 apples and 456 oranges.';
$result = preg_replace($pattern, $replacement, $string);
echo $result;
တွေ့မြင်နိုင်သည့်အတိုင်း callback function နှင့်ပေါင်းစပ်သည့် Preg_replace သည် အစားထိုးလိုအပ်ချက်များကိုဖြည့်ဆည်းပေးသည်။ သို့သော်ထိုကဲ့သို့သောကုဒ်များတိုးချဲ့ရန်မလွယ်ကူပါ။ အကယ်. ကျွန်ုပ်တို့သည်ပိုမိုပုံစံများကိုအစားထိုးလိုပါကကုဒ်သည်ရှုပ်ထွေးပြီးစီမံရန်ခက်ခဲလိမ့်မည်။ ဒီနေရာမှာ code ကိုပိုပြီးတိကျစွာလုပ်ဖို့ Preg_replace_callback_array ကို သုံးနိုင်တယ်။
$patterns = [
'/\d+/' => function($matches) {
return 'NUMBER';
},
'/apple/' => function($matches) {
return 'FRUIT';
},
'/orange/' => function($matches) {
return 'CITRUS';
}
];
$string = 'I have 123 apples and 456 oranges.';
$result = preg_replace_callback_array($patterns, $string);
echo $result;
ဤနည်းအားဖြင့်ပုံမှန်ပုံစံတစ်ခုစီသည် calmback function တစ်ခုနှင့်ကိုက်ညီပြီးကုဒ်ကိုပိုမိုရှင်းလင်းစွာပြုလုပ်ရန်ပိုမိုလွယ်ကူစေသည်။
preg_replace and preg_replace_callback_array တစ်ခုချင်းစီတွင်ကိုယ်ပိုင်အားသာချက်များနှင့်အားနည်းချက်များရှိသည်။ Preg_replace သည်ရိုးရှင်းသောအစားထိုးပစ္စည်းများအတွက်သင့်တော်သည် ။ Preg_replace_callback_array ကို ဖြတ်. သင်လိုအပ်သည့်အခါပိုမိုရှုပ်ထွေးသောပုံမှန်အစားထိုးနည်းလမ်းကိုသင်အကောင်အထည်ဖော်နိုင်သည်။ မှန်ကန်သောလိုအပ်ချက်နှင့်အညီမှန်ကန်သောလုပ်ဆောင်မှုကိုရွေးချယ်ခြင်းနှင့်မှန်ကန်သောလုပ်ဆောင်မှုကိုရွေးချယ်ခြင်းသည်သင်၏ PHP Project တွင်ပုံမှန်လုပ်ဆောင်မှုနှင့်အညီရွေးချယ်ခြင်းသည်ပုံမှန်စကားများနှင့်ပိုမိုထိရောက်စွာကိုင်တွယ်ဖြေရှင်းနိုင်ရန်ကူညီလိမ့်မည်။