လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> စာသားကိုမီးမောင်းထိုးပြရန် MB_ereGi_replace ကိုသုံးပါ (<mark> tag ဖြင့်)

စာသားကိုမီးမောင်းထိုးပြရန် MB_ereGi_replace ကိုသုံးပါ (<mark> tag ဖြင့်)

M66 2025-06-02

PHP ရှိ Multibyte ကြိုးများကိုထုတ်ယူသောအခါ, ကိစ္စ - အာရုံမခံစားနိုင်သောအစားထိုးလုပ်ငန်းများကိုမကြာခဏလိုအပ်သည်။ MB_eregi_replace သည်အထူးသဖြင့်တရုတ်ကဲ့သို့သောဘက်စုံစာလုံးများအတွက်အထူးသဖြင့်သင့်တော်သောဖြစ်ရပ်မှန်အာရုံမခံစားနိုင်သည့်ပုံမှန်စကားရပ်အစားထိုးခြင်းကိုအကောင်အထည်ဖော်ရန်အသုံးပြုနိုင်သည့်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ စာသားစာလုံးများမှသော့ချက်စာလုံးများကိုမီးမောင်းထိုးပြခြင်းများကိုမီးမောင်းထိုးပြရန် MB_ERERAGI_replace function နှင့် html <mark> tag ကိုမည်သို့ပေါင်းစပ်ရမည်ကိုဤဆောင်းပါးသည်မိတ်ဆက်ပေးလိမ့်မည်။


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

MB_ereGi_replace သည် PHP ၏ Multibyte String function များထဲမှတစ်ခုဖြစ်သည်။ ၎င်း၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 mb_eregi_replace(string $pattern, string $replacement, string $string, ?string $option = null): string
  • $ ပုံစံ - ကိုက်ညီရန်ပုံမှန်စကားရပ် (ကိစ္စတွင်မခံစားနိုင်သည့်)

  • $ အစားထိုး : string ကိုအစားထိုး

  • $ string : ရှာဖွေနေတဲ့ string ကို

  • $ option : ကိုက်ညီသောအပြုအမူကိုထိန်းချုပ်ရန် optional parameter သည် optional parameter သည်

၎င်းသည် Multi-byte အက္ခရာများကိုထောက်ပံ့ပေးပြီးတရုတ်, ဂျပန်, ကိုးရီးယားနှင့်အခြားဘာသာစကားများဖြင့်စာသားပြုပြင်ခြင်းအတွက်သင့်တော်သည်။


2 ။ <mark> tags များနှင့်အတူသော့ချက်စာလုံးများကိုမီးမောင်းထိုးပြ၏နိယာမ

HTML5 <mark> tag ကိုမီးမောင်းထိုးပြရန်လိုအပ်သည့်စာသားများကိုအထူးအသုံးပြုသည်။ Browser -er သည်ထင်ရှားသောအကြောင်းအရာများကိုပုံမှန်အားဖြင့်ဖော်ပြရန်အဝါရောင်နောက်ခံကိုအသုံးပြုသည်။

ဥပမာအားဖြင့်:

 ဒါ <mark>ပေါ်လွင်</mark> စကားများ。

"Highlight" ဟူသောစကားလုံးကိုနောက်ခံနှင့်နောက်ခံဖြင့်စာမျက်နှာပေါ်တွင်ပြသလိမ့်မည်။


3 ။ Keyword ကိုမီးမောင်းထိုးပြရန် MB_ereGi_rereplace ကို ပေါင်းစပ်ထားသောကုဒ်၏ဥပမာအားဖြင့်

အောက်ဖော်ပြပါအချက်သည် MB_eregi_replace ကို အသုံးပြု. MB_eregi_replace ကို အသုံးပြု. သတ်မှတ်ထားသောသော့ချက်စာလုံးများကို <memlight effect ကိုရရှိရန် <mark> tag ကိုခြုံရန် <mark> tag ဖြင့်ထုပ်ပိုးရမည်ကိုပြသသည်။

 <?php
// နမူနာစာသား
$text = "PHP ၎င်းသည်အလွန်လူကြိုက်များသော server-side scripting language ဖြစ်သည်。PHP Programming Paradigms မျိုးစုံကိုထောက်ပံ့သည်。";

// 需要ပေါ်လွင်的关键词(မျိုးစုံဖြစ်နိုင်ပါတယ်,အသုံးပြု|ခဲှခြားခြင်း)
$keywords = "php|ဆာဗာဘက်";

// ပုံမှန်အသုံးအနှုန်းများတည်ဆောက်ခြင်း,使အသုံးပြု括号捕获关键词本身,အမှုကိုလျစ်လျူရှုပါ
$pattern = "(" . $keywords . ")";

// 使အသုံးပြု mb_eregi_replace ဖြစ်ရပ် - အာရုံမခံစားနိုင်သောအစားထိုးပါစေ,သော့ချက်စာလုံးများထည့်ပါ <mark> ကပ်တံဆိပ်
$highlightedText = mb_eregi_replace(
    $pattern,
    "<mark>\\1</mark>",
    $text
);

// 输出ပေါ်လွင်后的文本
echo $highlightedText;
?>

Run ရလဒ်ဥပမာ -

 <mark>PHP</mark> အရမ်းလူကြိုက်များတယ်<mark>ဆာဗာဘက်</mark>ဘာသာစကား scripting。<mark>PHP</mark> Programming Paradigms မျိုးစုံကိုထောက်ပံ့သည်。

ဤနည်းအားဖြင့်စာမျက်နှာပေါ်ရှိသော့ချက်စာလုံးအပိုင်းကို <Mark> tag ဖြင့်ထုပ်ပိုးပြီးမီးမောင်းထိုးပြခြင်းအောင်မြင်ရန်ဖြစ်သည်။


4 ။ မှတ်စုများ

  • MB_ereGi_replace နှင့်ကိုက်ညီသည်မှာဖြစ်ရပ်မှန်အာရုံမခံစားနိုင်သည့်အခြေအနေနှင့်ကိုက်ညီသည့်နေရာများနှင့်ကိုက်ညီသောနေရာများလိုအပ်သည်။

  • ပုံမှန်အသုံးအနှုန်းများအတွက်သော့ချက်စာလုံးများကိုပိုက်ဇာတ်ကောင်များဖြင့် ခွဲထုတ် ရန်လိုအပ်သည် "သို့မဟုတ်" ၏ဆက်ဆံရေးကိုကိုယ်စားပြုရန်။

  • အကယ်. သော့ချက်စာလုံးတွင်အထူးအက္ခရာများပါ 0 င်ပါကပုံမှန်ကိုက်ညီမှုကိုမထိခိုက်စေရန်ပထမ ဦး ဆုံးလွတ်မြောက်ရန်လိုအပ်သည်။

  • Multibyte string processing သည်မှန်ကန်ကြောင်းသေချာစေရန် PHP ပတ်ဝန်းကျင်တွင် Mbstring Extension ကိုဖွင့်ထားကြောင်းသေချာအောင်လုပ်ပါ။


5 ။ အမှန်တကယ် URL ဥပမာများနှင့်ပေါင်းစပ်သည်

သင့်တွင်အောက်ပါနမူနာဝက်ဘ်လိပ်စာရှိသည်ဆိုပါစို့။ သော့ချက်စာလုံးအချို့ကိုအစားထိုးရန်လိုအပ်သည်ဆိုပါစို့။

 <?php
$text = "ကျွန်ုပ်တို့၏တရားဝင်ဝက်ဘ်ဆိုက်သို့သွားပါ https://m66.net/ ပိုမိုသိရှိရန်。";

// ပေါ်လွင် “m66.net”
$keywords = "m66\\.net";

$pattern = "(" . $keywords . ")";

$highlightedText = mb_eregi_replace(
    $pattern,
    "<mark>\\1</mark>",
    $text
);

echo $highlightedText;
?>

ကွပ်မျက်ပြီးနောက် "M66.net" ကိုမီးမောင်းထိုးပြလိမ့်မည်။


အထက်ပါနိဒါန်းမှတစ်ဆင့် MB_eregi_replace နှင့် <memack tags များကိုသင်အလွယ်တကူသုံးနိုင်သည်။ အကြောင်းအရာ၏ဖတ်နိုင်မှုနှင့်အသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်စေရန်စာသားအတွင်းရှိသော့ချက်စာလုံးများကိုမီးမောင်းထိုးပြနိုင်သည်။