လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> ဘာသာစကားမျိုးစုံစာသားအတွက် preg_replace_callback_array နှင့်အတူ variable tags တွေကိုဘယ်လို dvonatically အစားထိုးနည်း။

ဘာသာစကားမျိုးစုံစာသားအတွက် preg_replace_callback_array နှင့်အတူ variable tags တွေကိုဘယ်လို dvonatically အစားထိုးနည်း။

M66 2025-05-14

ဘာသာစကားမျိုးစုံ applications များဖွံ့ဖြိုးလာသောအခါကျွန်ုပ်တို့သည် dynamic variable များကို template ကိုထည့်သွင်းရန်လိုအပ်သည်။ PHPP PREG_RESTER_CALLASTER_CALALBACE_ARALBACK_ARRAY သည် Tags ကို dynam_replace_array ကိုရှုပ်ထွေးသောစာသားတွင် dynamally tags များကိုအစားထိုးရန်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။

1 ။ Preg_replace_callback_array ဆိုတာဘာလဲ။

Preg_replace_callback_array သည် PHP တွင်ပုံမှန်စကားရပ်အစားထိုးလုပ်ဆောင်ချက်ဖြစ်သည်။ ၎င်းသည်သင့်အားပြန်လည်ခေါ်ဆိုမှု function ကိုအစားထိုးလုပ်ဆောင်မှုများကိုပုံမှန်ကိုင်တွယ်ရန်ခွင့်ပြုသည်။ ပုံမှန် Preg_replace နှင့်မတူဘဲ Preg_replace_callback_array သည် မတူညီသောပုံမှန်ပုံစံများကိုကိုင်တွယ်နိုင်ပြီးပုံစံတစ်ခုစီအတွက်သက်ဆိုင်ရာ callback လုပ်ဆောင်ချက်များကိုသတ်မှတ်နိုင်သည်။

သဒ္ဒါ

 preg_replace_callback_array(array $patterns_and_callbacks, string $subject): string
  • $ Patternals_and_callbacks : ဤသည်မှာ array ၏သော့များသည် Acciative array တစ်ခုဖြစ်သည်။ array ၏သော့များသည်ပုံမှန်အသုံးအနှုန်းပုံစံများဖြစ်ပြီးတန်ဖိုးများသည် callback functions များဖြစ်သည်။

  • $ အကြောင်းအရာ - အစားထိုးရန်ပစ်မှတ် string ကို။

2 ။ ဘာသာစကားမျိုးစုံစာသားအတွက် preg_replace_callback_array ကို သုံးပါ

ကျွန်ုပ်တို့သည်ဘာသာစကားမျိုးစုံကိုထောက်ပံ့ရန်နှင့်အမျိုးမျိုးသောဘာသာစကားများဖြင့် variable tags များကိုအစားထိုးရန်လိုအပ်သည့် application တစ်ခုကိုတီထွင်နေသည်ဆိုပါစို့။ စာသား template တွင် {username} {username} {username } {use} {email} , ဤ variable တွေကို dvaribleds ၏တန်ဖိုးများကို dvacktical အစားထိုးရန် preg_replace_callback_array ကို သုံးနိုင်သည်ဟုယူဆသည်။

နမူနာကုဒ်

 // အသုံးပြုသူသတင်းအချက်အလက်ကိုတုပပါ
$user = [
    'username' => 'JohnDoe',
    'email' => 'john@example.com',
];

// ဘာသာစကားတင်းပလိတ်များကိုသတ်မှတ်ပါ
$template = "ဝမ်းသာစွာနှုတ်ဆက်ခြင်း, {username}! သင့်ရဲ့အီးမေးလ်က: {email}";

// ပုံမှန် mode ကိုနှင့် callback function ကိုမြေပုံ
$patterns_and_callbacks = [
    '/\{username\}/' => function($matches) use ($user) {
        return $user['username'];
    },
    '/\{email\}/' => function($matches) use ($user) {
        return $user['email'];
    },
];

// အသုံးပြုpreg_replace_callback_arrayအစားထိုးပါစေ
$finalText = preg_replace_callback_array($patterns_and_callbacks, $template);

echo $finalText;

အထက်ပါကုဒ်တွင်အသုံးပြုသူအချက်အလက်ပါ 0 င်သော array အသုံးပြုသူ တစ် ဦး ကိုကျွန်ုပ်တို့ပထမဆုံးသတ်မှတ်သည်။ ထို့နောက်ဘာသာစကားမျိုးစုံသောစာသားပါ 0 င်သည့် $ template string ကိုသတ်မှတ်ထားသည် Associative Array_and_and_and_callbacks မှတစ်ဆင့်ပုံမှန်စကားရပ်ပုံစံနှင့် callback function ကိုမြေပုံဆွဲပြီးနောက်ဆုံးတွင်အစားထိုးစစ်ဆင်ရေးလုပ်ဆောင်ရန် Preg_replace_callback_array function ကိုအသုံးပြုပါ။

ရလဒ်ရလဒ် -

 ဝမ်းသာစွာနှုတ်ဆက်ခြင်း, JohnDoe! သင့်ရဲ့အီးမေးလ်က: john@example.com

3 ။ ဘာသာစကားမျိုးစုံအထောက်အပံ့ကိုအကောင်အထည်ဖော်ရန် Preg_replace_callback_array ကို သုံးပါ

လက်တွေ့ကျသောအပလီကေးရှင်းများတွင်အသုံးပြုသူ၏ဘာသာစကားရွေးချယ်ခြင်းအရဘာသာစကားကွဲပြားမှုများကိုပြောင်းလဲရန်လိုအပ်သည်။ Preg_replace_CAllback_array ဖြင့်ကျွန်ုပ်တို့သည်ဘာသာစကားမျိုးစုံနှင့်အတူတင်းပလိတ်များရှိ variable များကိုပြောင်းလဲနိုင်သည်။

နမူနာကုဒ် - စာသားအမျိုးမျိုးဖြင့်စာသားကိုပြောင်းလဲခြင်း

 // အသုံးပြုသူဘာသာစကားကိုတုပပါ
$lang = 'zh';

// ဘာသာပေါင်းစုံတင်းပလိတ်များ
$translations = [
    'en' => "Welcome, {username}! Your email is: {email}",
    'zh' => "ဝမ်းသာစွာနှုတ်ဆက်ခြင်း, {username}! သင့်ရဲ့အီးမေးလ်က: {email}",
];

// အသုံးပြုသူသတင်းအချက်အလက်
$user = [
    'username' => 'JohnDoe',
    'email' => 'john@example.com',
];

// လက်ရှိဘာသာစကားအတွက် template ကိုရွေးချယ်ပါ
$template = $translations[$lang];

// ပုံမှန် mode ကိုနှင့် callback function ကိုမြေပုံ
$patterns_and_callbacks = [
    '/\{username\}/' => function($matches) use ($user) {
        return $user['username'];
    },
    '/\{email\}/' => function($matches) use ($user) {
        return $user['email'];
    },
];

// အသုံးပြုpreg_replace_callback_arrayအစားထိုးပါစေ
$finalText = preg_replace_callback_array($patterns_and_callbacks, $template);

echo $finalText;

ဤဥပမာတွင်ကျွန်ုပ်တို့သည်သုံးစွဲသူ၏ဘာသာစကားရွေးချယ်မှုအပေါ် အခြေခံ. သက်ဆိုင်ရာ template template ကို ဦး စွာတင်ပါ။ ထို့နောက် variable အစားထိုးကိုပုံမှန်နှင့် callback function များကိုမှတစ်ဆင့်လုပ်ဆောင်သည်။

output ရလဒ် (တရုတ်ကိုရွေးပါသည်ဟုယူဆသည်):

 ဝမ်းသာစွာနှုတ်ဆက်ခြင်း, JohnDoe! သင့်ရဲ့အီးမေးလ်က: john@example.com

4 ။ domain name ကို URL တွင်အစားထိုးပါ

တစ်ခါတစ်ရံတွင်ကျွန်ုပ်တို့သည် URL ၏ဒိုမိန်းအမည်အားအထူးသဖြင့်ပတ် 0 န်းကျင်ရှိဒိုမိန်းအမည်ကိုပြောင်းလဲသည့်အခါ, ဥပမာအားဖြင့်, သင်သည်ဖွံ့ဖြိုးရေးကာလအတွင်းကွဲပြားခြားနားသော URL ကို အသုံးပြု. ထုတ်လုပ်မှုပတ် 0 န်းကျင်သို့ပြောင်းရန်လိုအပ်ပါက URL ရှိဒိုမိန်းအမည်ကို dvonate အစားထိုးရန် Preg_replace_callback_array ကို သုံးနိုင်သည်။

နမူနာကုဒ်: URL domain name ကိုအစားထိုးပါ

 // အသုံးပြုသူသတင်းအချက်အလက်ကိုတုပပါ
$user = [
    'username' => 'JohnDoe',
    'email' => 'john@example.com',
];

// Template တွင်ပါရှိသည် URL
$template = "ကျေးဇူးပြု. ကျွန်ုပ်တို့၏ဝက်ဘ်ဆိုက်ကိုကြည့်ပါ: https://www.old-domain.com/profile/{username}";

// ပုံမှန် mode ကိုနှင့် callback function ကိုမြေပုံ
$patterns_and_callbacks = [
    '/https?:\/\/(www\.[a-zA-Z0-9\-\.]+)\//' => function($matches) {
        return str_replace($matches[1], 'm66.net', $matches[0]);
    },
    '/\{username\}/' => function($matches) use ($user) {
        return $user['username'];
    },
];

// အသုံးပြုpreg_replace_callback_arrayအစားထိုးပါစေ
$finalText = preg_replace_callback_array($patterns_and_callbacks, $template);

echo $finalText;

ရလဒ်ရလဒ် -

 ကျေးဇူးပြု. ကျွန်ုပ်တို့၏ဝက်ဘ်ဆိုက်ကိုကြည့်ပါ: https://www.m66.net/profile/JohnDoe

ဤဥပမာတွင်ကျွန်ုပ်တို့သည် URL နှင့်ကိုက်ညီရန်နှင့် M66.net ဖြင့် domain name ကိုအစားထိုးရန်ပုံမှန်စကားရပ်ကိုအသုံးပြုသည်။ ဤစစ်ဆင်ရေးသည်ကျွန်ုပ်တို့အား URL များကိုမတူညီသောပတ်ဝန်းကျင်ရှိ URLs များကိုပြောင်းလဲစေသည်။

5 ။ အကျဉ်းချုပ်

PREG_RESTER_CALLASTBAK_ARRAY သည်အလွန်ပြောင်းလွယ်ပြင်လွယ်နှင့်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ပုံမှန်အသုံးအနှုန်းများနှင့် callback function များကိုပေါင်းစပ်ခြင်းအားဖြင့်ရှုပ်ထွေးသောစာသားအစားထိုးလိုအပ်ချက်များကိုသင်အလွယ်တကူကိုင်တွယ်နိုင်ပြီးမတတ်နိုင်သော 0 န်ဆောင်မှုပေးခြင်းနှင့်အမျိုးမျိုးသောအစားထိုးခြင်းများကိုထောက်ပံ့နိုင်ပြီး,