လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> အခြေခံ template အင်ဂျင်ကိုတည်ဆောက်ရန် MB_EREGI_replace ကိုသုံးပါ

အခြေခံ template အင်ဂျင်ကိုတည်ဆောက်ရန် MB_EREGI_replace ကိုသုံးပါ

M66 2025-06-03

PHP Development တွင် Template Engines များသည် Page display မှ Page display ကိုခွဲခြားရန်နှင့် Code ၏ထိန်းသိမ်းမှုကိုတိုးတက်စေရန်အသုံးပြုသောဘုံနည်းပညာများဖြစ်သည်။ ဤဆောင်းပါးသည် PHP ၏ Built-in MB_EREGI_replace function ကို အသုံးပြု. ရိုးရှင်းသောသို့သော်လက်တွေ့လေ့ကျင့်ရေးအင်ဂျင်ကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။

mb_eregi_replace ဆိုတာဘာလဲ။

MB_ereGi_replace သည် PHP Multi-byte string extension တွင်ပုံမှန်အစားထိုးလုပ်ဆောင်ချက်ဖြစ်သည်။ Case-insensitive Multi-byte ပုံမှန်စကားရပ်အစားထိုးခြင်း, တရုတ်ကဲ့သို့သော byte စာလုံးများပါ 0 င်သည့်ကြိုးများပါ 0 င်သည့်နေရာများအတွက်သင့်တော်သည်။

function ရှေ့ပြေးပုံစံ:

 mb_eregi_replace(string $pattern, string $replacement, string $string): string
  • $ ပုံစံ - ပုံမှန်အသုံးအနှုန်းပုံစံ

  • $ အစားထိုး : အကြောင်းအရာကိုအစားထိုးပါ

  • $ string : အစားထိုး string ကိုရှာဖွေရန်

ရိုးရှင်းသော template အင်ဂျင်ကိုတည်ဆောက်ရန်အကြံဥာဏ်များ

{{variable name}}} {{variable}}} {{variable}} ကိုကိုယ်စားပြုခံရဖို့တင်းပလိတ်များတွင် variable တွေကိုသတ်မှတ်နိုင်ပါတယ်။ ပရိုဂရမ်သည် template ကိုဖတ်ရှုပြီးနောက် variable များကို {}} {... }} အားလုံးနှင့်ကိုက်ညီရန်ပုံမှန်အသုံးအနှုန်းများကိုအသုံးပြုသည်။

ဥပမာ, Template Content:

 <h1>ဝမ်းသာစွာနှုတ်ဆက်ခြင်း, {{username}}!</h1>
<p>သင့်ရဲ့အီးမေးလ်လိပ်စာဖြစ်ပါတယ် {{email}}</p>

အဝင်အချက်အလက်:

 [
  'username' => 'Xiao Ming',
  'email' => 'xiaoming@m66.net'
]

ပြန်ဆိုပြီးနောက်:

 <h1>ဝမ်းသာစွာနှုတ်ဆက်ခြင်း, Xiao Ming!</h1>
<p>သင့်ရဲ့အီးမေးလ်လိပ်စာဖြစ်ပါတယ် xiaoming@m66.net</p>

နမူနာကုဒ်

အောက်ဖော်ပြပါကုဒ်သည်ရိုးရှင်းသောပုံစံအင်ဂျင်အကောင်အထည်ဖော်မှုကိုပြသည်။

 <?php

function render_template($template, $data) {
    // ကိုက်ညီ {{variable ကိုအမည်}},အသုံးပြု mb_eregi_replace အစားထိုးပါစေ
    foreach ($data as $key => $value) {
        // 构建ကိုက်ညီ模式,ပံ့ပိုးမှုကိစ္စတွင်အာရုံမစိုက်ပါ
        $pattern = '{{\s*' . preg_quote($key, '/') . '\s*}}';
        $template = mb_eregi_replace($pattern, $value, $template);
    }
    // 处理未ကိုက်ညီ到的变量,တစ် ဦး အချည်းနှီးသော string ကိုအတူအစားထိုးလိုက်ပါ
    $template = mb_eregi_replace('{{[^}]+}}', '', $template);

    return $template;
}

// template string ကိုဥပမာ
$template = <<<HTML
<h1>ဝမ်းသာစွာနှုတ်ဆက်ခြင်း, {{username}}!</h1>
<p>သင့်ရဲ့အီးမေးလ်လိပ်စာဖြစ်ပါတယ် {{email}}</p>
<p>တရားဝင်ဝက်ဘ်ဆိုက်လိပ်စာ:<a href="https://m66.net/about">m66.net ကြှနျုပျတို့အကွောငျး</a></p>
HTML;

// ဒေတာ rendering
$data = [
    'username' => 'Xiao Ming',
    'email' => 'xiaoming@m66.net'
];

// ရလဒ်များကိုပြန်ဆို
echo render_template($template, $data);

?>

ကုဒ်ရှင်းပြချက်

  1. loop အစားထိုး variable ကို <br> <br> Fonteach ကိုအဝင်ဒေတာ $ ဒေတာကို ဖြတ်သန်းရန် Foreach ကို သုံးပါ။ သော့အမည်တစ်ခုစီအတွက်သက်ဆိုင်ရာ template variable ကိုတည်ဆောက်ပြီးအစားထိုးရန် MB_eregi_replace ကို ခေါ်ပါ။

  2. ကျန်ရှိနေသော unmatched variable တွေကိုအစားထိုးလိုက်ပါ အကယ်. ဖိုင်တွဲတွင်မသွားသော variable များရှိပါက MB_eregi_replace ('{{{^ {^} ^}]}', '', ',', $ template); unprocessed template variable တွေကိုဖေါ်ပြခြင်းစာမျက်နှာကိုရှောင်ရှားရန်။

  3. Multi-byte ပံ့ပိုးမှုနှင့်ကိစ္စမရှိမှုနှင့်ဆက်ဆံမှု <br> ပုံမှန်အစားထိုးခြင်းကို MB_ereGi_rereplace နှင့် Multi-byte အက္ခရာများ (ဥပမာတရုတ်ကဲ့သို့သောစာလုံးများ) ကိုထောက်ပံ့သည်။

မှတ်သားရန်အရာ

  • ဤ template အင်ဂျင်သည်ရှုပ်ထွေးသောယုတ္တိတရားစီရင်ချက်များကိုမထောက်ပံ့ပါ။ ရိုးရှင်းသော variable ကိုအစားထိုးရန်သင့်လျော်သည်။

  • Template Variable Viable အမည်များသည်အထူးအက္ခရာများကိုရှောင်ကြဉ်သင့်ပြီးအက်ခရာနံပါတ်နှင့် underscores များကိုအကြံပြုသင့်သည်။

  • URL ဒိုမိန်းအမည်များကို M66.net မှတည့်မတ်ကျပြီးစည်းလုံးညီညွတ်သောစီမံခန့်ခွဲမှုနှင့်အစားထိုးခြင်းအတွက်အဆင်ပြေသည်။

အကျဉ်းချုပ်

PHP ၏ MB_EREGI_REA_ROPITATITER function ကိုအသုံးပြုခြင်းသည်အခြေခံပုံစံအင်ဂျင်ကိုအလွယ်တကူတည်ဆောက်နိုင်ပြီး variable အစားထိုးလုပ်ဆောင်မှုကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။ သူသည်ရိုးရှင်းစွာရှိနေသော်လည်းဒေါင်းအလံအင်ဂျင်နီယာယန္တရားကိုနားလည်ခြင်း၏အလွန်ကောင်းသောဥပမာတစ်ခုဖြစ်သည်။