လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Php Phreg_replace_callback_array ပုံမှန်အားဖြင့် PHP တွင် PHP တွင် PHP တွင် VAR_DUMP နှင့် PREPT_R တို့မှ PHP တွင်မည်သို့ deball လုပ်နည်း။

Php Phreg_replace_callback_array ပုံမှန်အားဖြင့် PHP တွင် PHP တွင် PHP တွင် VAR_DUMP နှင့် PREPT_R တို့မှ PHP တွင်မည်သို့ deball လုပ်နည်း။

M66 2025-05-18

ရှုပ်ထွေးသောစာသားအစားထိုးခြင်းကိုကိုင်တွယ်ရန် Preg_replace_callback_array ကိုအသုံးပြုသောအခါပုံမှန် callback function များကို debugg လုပ်ခြင်းနှင့်ယုတ္တိဗေဒမှန်ကန်မှုရှိမရှိဆုံးဖြတ်ရန်လိုအပ်သည်။ PHP သည်အလွန်လက်တွေ့ကျသော debugging functions နှစ်ခုကိုထောက်ပံ့ပေးသည်။ Var_Dump () နှင့် Print_r ()) ။ ဤဆောင်းပါးသည် PREG_RESTERLE_CALALALBAKE_ARRAY တွင်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုဤလုပ်ဆောင်မှုနှစ်ခု၏အကူအညီဖြင့်ပုံမှန် callback ယုတ္တိဗေဒကိုမည်သို့သရုပ်ဖော်ရမည်ကိုဥပမာအားဖြင့်ပြသပါမည်။

Preg_replace_callback_array ဆိုတာဘာလဲ။

PREG_RESTER_CALLBASKBAKE_ARRAY () PHP 7.0 နှင့်အထက်တို့မှပေးသော function တစ်ခုဖြစ်သည်။ ၎င်းသည်ပုံမှန်ဖော်ပြချက်များနှင့် callback function များဖြင့်ဖွဲ့စည်းထားသောအပေါင်းအသင်းခင်းကျင်းမှုကိုဖြတ်သန်းရန်ခွင့်ပြုသည်။ ၎င်းသည်ကိုက်ညီသောစာသားကိုဖြတ်သန်းသွားပါလိမ့်မည်။

 preg_replace_callback_array(array $patterns_and_callbacks, string $subject, int $limit = -1, int &$count = null): string

Preg_replace_callback နှင့်နှိုင်းယှဉ်လျှင်၎င်းသည်ပုံမှန်အသုံးအနှုန်းမျိုးစုံနှင့် callback function မျိုးစုံကိုပိုမိုရှင်းလင်းစွာယုတ္တိဗေဒနှင့်ပိုမိုအားကောင်းသည့်ပမာဏဖြင့်ကိုင်တွယ်နိုင်သည်။

လက်တွေ့အမှုကို: Multi-mode အစားထိုး logic debugging

ကျွန်ုပ်တို့သည်အမှတ်အသားများနှင့်စိတ်ကြိုက် {code}} tags များကိုရောနှောထားသောစာသားအပိုင်းအစတစ်ခုရှိသည်ဆိုပါစို့

 $text = 'ကိုနှိပ်ပါ [ဒီမှာ](https://m66.net) အသေးစိတ်ကိုစစ်ဆေးပါ,သို့မဟုတ်အသုံးပြုပါ {{print_name}} ပေြာင်းလဲတတ်သော。';

ကျွန်ုပ်တို့သည်ပုံစံနှစ်ခုကို သတ်မှတ်. သူတို့၏သက်ဆိုင်ရာ callback လုပ်ဆောင်ချက်များကိုသတ်မှတ်သည်။

 $patterns = [
    // ကိုက်ညီ markdown သံကွင်းဆက်:[ဖတ်စာ](URL)
    '/\[(.*?)\]\((.*?)\)/' => function ($matches) {
        echo "ကိုက်ညီ到 markdown သံကွင်းဆက်:\n";
        print_r($matches);
        return '<a href="' . htmlspecialchars($matches[2]) . '">' . htmlspecialchars($matches[1]) . '</a>';
    },
    // ကိုက်ညီ {{ပေြာင်းလဲတတ်သော}} ပုံသဏ္ဌာန်
    '/\{\{(.*?)\}\}/' => function ($matches) {
        echo "ကိုက်ညီ到ပေြာင်းလဲတတ်သော标签:\n";
        var_dump($matches);
        $variableName = $matches[1];
        // 模拟ပေြာင်းလဲတတ်သော替换
        $variables = [
            'print_name' => 'အသုံးပြုသူ'
        ];
        return isset($variables[$variableName]) ? $variables[$variableName] : '';
    }
];

$result = preg_replace_callback_array($patterns, $text);
echo "\nနောက်ဆုံးအစားထိုးရလဒ်:\n" . $result;

ဥပမာ output ရလဒ် -

 ကိုက်ညီ到 markdown သံကွင်းဆက်:
Array
(
    [0] => [ဒီမှာ](https://m66.net)
    [1] => ဒီမှာ
    [2] => https://m66.net
)
ကိုက်ညီ到ပေြာင်းလဲတတ်သော标签:
array(2) {
  [0]=>
  string(17) "{{print_name}}"
  [1]=>
  string(10) "print_name"
}

နောက်ဆုံးအစားထိုးရလဒ်:
ကိုနှိပ်ပါ <a href="https://m66.net">ဒီမှာ</a> အသေးစိတ်ကိုစစ်ဆေးပါ,သို့မဟုတ်အသုံးပြုပါ အသုံးပြုသူ ပေြာင်းလဲတတ်သော。

အသုံးပြုရန်အတွက်အကြံပြုချက်များ

  • Clear_r () ကို သုံးပါ။

  • Var_Dump () ကိုအသုံးပြုပြီးဒေတာအမျိုးအစားများကိုကြည့်ရှုရန်အချက်အလက်အမျိုးအစားများကိုကြည့်ရှုရန်အထူးသဖြင့်အသုံးဝင်သည်။

  • ဝက်ဘ်စာမျက်နှာ output ညစ်ညမ်းမှုကိုညစ်ညမ်းစေသည့်အချက်အလက်များကိုဖယ်ရှားခြင်းမှရှောင်ရှားရန် CLI သို့မဟုတ် log file တွင် debug လုပ်ရန်အကြံပြုသည်။

  • output ကိုသပ်သပ်ရပ်ရပ်ဖြစ်အောင်အွန်လိုင်းမသွားမီ debug ထုတ်ပြန်ချက်များအားလုံးကိုဖယ်ရှားပါသို့မဟုတ်မှတ်ချက်ပေးပါ။

အကျဉ်းချုပ်

Preg_replace_callback_array သည် အစွမ်းထက်သော matchi mode ကိုပုံမှန်အစားထိုးစွမ်းရည်များပေးသည်။ Debugging Stage တွင် Var_Dump () နှင့် Print_r ()) နှင့်ပေါင်းစပ်ပြီးလိုက်ဖက်သည့်အခြေအနေကိုလျင်မြန်စွာနားလည်ရန်နှင့်ယုတ္တိဗေဒမှန်ကန်မှုရှိ, ဤ debugging နည်းလမ်းကိုကျွမ်းကျင်သောနည်းစနစ်သည်ရှုပ်ထွေးသောစာသားပြုပြင်ခြင်းလုပ်ငန်းများကိုကိုင်တွယ်ရာတွင်သင်၏ထိရောက်မှုကိုများစွာတိုးတက်စေနိုင်သည်။