PHP တွင် PREG_RELE_CALLALLATE_ARALALBAKE_MAP သည် ရှုပ်ထွေးသောစာသားစစ်ဆင်ရေးများကိုကိုင်တွယ်ရန်ပေါင်းစပ်ထားသောအလွန်အစွမ်းထက်သောကိရိယာနှစ်ခုဖြစ်သည်။ Preg_replace_CAllback_array သည် သင့်အားပုံစံအစုတခုအပေါ်တွင် အခြေခံ. အစားထိုးခြင်းလုပ်ငန်းများကိုအစားထိုးခြင်းနှင့်ကိုက်ညီသောအစိတ်အပိုင်းတစ်ခုစီတွင် callback function ကိုလုပ်ဆောင်ရန်ခွင့်ပြုသည်။ Array_map သည် ခင်းကျင်းမှု၏ element တစ်ခုစီအတွက် callback function ကိုသုံးနိုင်သည်။
ရှုပ်ထွေးသောစာသားအပြောင်းအလဲများကိုရရှိရန်ဤဆောင်းပါးတွဲတွင်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုမည်သို့အသုံးပြုရမည်ကိုပြသရန်ဥပမာတစ်ခုကိုကျွန်ုပ်တို့အသုံးပြုပါမည်။
ကျွန်ုပ်တို့တွင် URLs မျိုးစုံနှင့်စာသားများစွာပါ 0 င်သော string တစ်ခုရှိသည်ဆိုပါစို့ ။ ၎င်းသည်တွားတတ်သောတိရစ္ဆာန်များသို့မဟုတ်စာသားသန့်ရှင်းရေးအခြေအနေများကဲ့သို့သောဘုံလိုအပ်ချက်ဖြစ်သည်။
ပထမ ဦး စွာကျွန်ုပ်တို့သည်အဓိကလုပ်ဆောင်ချက်နှစ်ခုကိုသတ်မှတ်ရန်လိုအပ်သည်။
တိကျသောပုံစံကို preg_replace_callback_array ဖြင့်ကြိုးဖြင့်အစားထိုးပါ။
အစားထိုးရလဒ်များကိုထပ်မံပြုပြင်ခြင်းသို့မဟုတ်ပြောင်းလဲခြင်းပြုလုပ်ရန် array_map ကို သုံးပါ။
တိကျတဲ့အကောင်အထည်ဖော်မှုကိုကြည့်ရအောင်။
<?php
// 1. အစားထိုးခံရဖို့လိုအပ်ကြောင်း callback function ကိုသတ်မှတ်ပါ
$callback_array = [
// ကိုက်ညီ URL ဒိုမိန်းအမည်ကိုအစားထိုးပါ
'/https?:\/\/([\w\-]+\.[\w\-]+)/' => function($matches) {
return 'https://' . 'm66.net';
},
// ကိုက်ညီ [url] tag နှင့်လုပ်ငန်းစဉ်
'/\[url\](.*?)\[\/url\]/' => function($matches) {
return '<a href="' . $matches[1] . '">' . $matches[1] . '</a>';
}
];
// 2. မူရင်းစာသား
$text = "ဒီစမ်းသပ်မှု string ကိုဖြစ်ပါတယ်,အချို့ပါဝင်သည် URL: https://example.com နှင့်အခြား link ကို:[url]https://example2.com[/url]。";
// 3. အသုံးပြု preg_replace_callback_array အစားထိုးပါစေ
$processed_text = preg_replace_callback_array($callback_array, $text);
// 4. အသုံးပြု array_map processing arrays(ဤဥပမာသည်စာသားကိုစာလုံးအကြီးသို့ပြောင်းလဲပေးသည်)
$processed_text_array = array_map('strtoupper', explode(' ', $processed_text));
// 5. string ကိုတစ် ဦး string ကိုသို့ processed စာသားကိုပေါင်းစည်း
$final_text = implode(' ', $processed_text_array);
// နောက်ဆုံးရလဒ် output ကို
echo $final_text;
?>
PREG_RESTERLE_CALLBASK_ARARY : ဒီ function က array တစ်ခုချင်းစီရဲ့ပထမ ဦး ဆုံး parameter တစ်ခုအနေနဲ့ assigniative ခင်းကျင်းမှုတစ်ခုအဖြစ်လက်ခံသည်။ array တစ်ခုစီ၏သော့ချက်သည်ပုံမှန်ဖော်ပြချက်ဖြစ်သည်။ ဒီ callback function ကိုကိုက်ညီစာသားအပေါ်အပြောင်းအလဲနဲ့လုပ်ဆောင်သည်။
ဒီဥပမာမှာပုံစံနှစ်ခုရှိတယ်။
URL အစားထိုး : HTTPS: // သို့မဟုတ် http: // ဖြင့်စတင်ခြင်း URL ကိုပုံမှန်စကားရပ်မှတစ်ဆင့် M66.net ဖြင့်အစားထိုးပါ။
URL tag အစားထိုး : [url] နှင့် [/ url] tags များအကြား URL နှင့်ကိုက်ညီပြီး၎င်းကို HTML hyperlink format ဖြင့်ပြောင်းပါ။
Array_map : ဤလုပ်ဆောင်ချက်သည် array ၏ element တစ်ခုချင်းစီ၏သတ်မှတ်ထားသော callback function ကိုသက်ဆိုင်သည်။ ဤနေရာတွင်ကျွန်ုပ်တို့သည်စကားလုံးများကို အမြတ်ထုတ်ခြင်း ဖြင့်စကားလုံးများဖြင့်စကားလုံးများဖြင့်စကားလုံးများဖြင့်ခွဲထားပြီးစကားလုံးတစ်လုံးစီကိုအရင်းအနှီးများအဖြစ်ပြောင်းလဲရန် array_map ကို အသုံးပြုသည်။ နောက်ဆုံးအနေဖြင့်၎င်းတို့အားပြန်လည် ချိတ်ဆက်မှု မှတစ်ဆင့် string တစ်ခုသို့ပြန်ပေါင်းသင်းပါ။
input text သည်:
ဒီစမ်းသပ်မှု string ကိုဖြစ်ပါတယ်,အချို့ပါဝင်သည် URL: https://example.com နှင့်အခြား link ကို:[url]https://example2.com[/url]。
preg_replace_callback_array နှင့် array_map ဖြင့်ထုတ်ယူပြီးနောက် output ရလဒ်သည် -
ဒါ တစ် စမ်းသပ်မှု ကြိုး,ပါဝင် အချို့သော URL: https://m66.net နှင့် 另တစ် သံကွင်းဆက်:<a href="https://example2.com">https://example2.com</a>。
Preg_replace_callback_array နှင့် array_map ကို အသုံးပြုခြင်းသည်အထူးသဖြင့် URLs သို့မဟုတ် tag ပုံစံများကိုကိုင်တွယ်သောအခါအလွန်ရှုပ်ထွေးသောစာသားပြုပြင်ခြင်းကိုအကောင်အထည်ဖော်နိုင်ကြသည်။ ဤနည်းလမ်းသည်ထိရောက်မှုသာမကဘဲပြောင်းလွယ်ပြင်လွယ်ရှိသည့်အပြင်ကွဲပြားခြားနားသောအပြောင်းအလဲများနှင့်လိုအပ်ချက်များနှင့်အညီကွဲပြားခြားနားသောအပြောင်းအလဲနဲ့ယုတ္တိဗေဒကိုချဲ့နိုင်သည်။ စာသားတွေအများကြီးကိုလုပ်ဆောင်ဖို့လိုအပ်ရင်ဒီချဉ်းကပ်မှုကကောင်းကောင်းအလုပ်လုပ်တယ်။
ဤရိုးရှင်းသောဥပမာအားဖြင့်ဤရိုးရှင်းသောဥပမာအားဖြင့်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုမည်သို့ အသုံးပြု. အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်၎င်းတို့ကိုမည်သို့အသုံးချကြောင်းသင်ပိုမိုနားလည်သဘောပေါက်နိုင်သည်။