preg_replace_callback_array လုပ်ဆောင်ချက်

preg_replace_callback_array လုပ်ဆောင်ချက်သည် မတူညီသော Callback လုပ်ဆောင်ချက်များကို အသုံးပြု၍ စာကြောင်းတစ်ခုအတွင်း များပြားလှသော အစားထိုးခြင်းများ လုပ်ဆောင်ခွင့်ပြုပါသည်။ ပထမ ပါရာမီတာအနေဖြင့် လုပ်ဆောင်ချက်သည် အဆိုပါကိန်းများ ရီဂျက်စ်ပရက်ရှင်းများဖြစ်ပြီး တန်ဖိုးများက Callback လုပ်ဆောင်ချက်များဖြစ်သည့် associative array တစ်ခုကို လက်ခံပါသည်။ ဒုတိယ ပါရာမီတာအနေဖြင့် စီမံခန့်ခွဲရန် စာကြောင်းတစ်ခု ပေးပို့ပါသည်။

ဝါကျဖွဲ့စည်းပုံ

phppreg_replace_callback_array(array $patterns_and_callbacks, string $subject): string

ဥပမာ

နံပါတ်များကို ၎င်းတို့၏ စတုရန်းများဖြင့် လည်းကောင်း၊ စာလုံးများကို အကြီးစားများဖြင့် လည်းကောင်း အစားထိုးကြပါစို့:

php<?php
  $str = 'a1b2c3';
  $res = preg_replace_callback_array([
    '/\d+/' => function($matches) {
      return $matches[0] * $matches[0];
    },
    '/[a-z]/' => function($matches) {
      return strtoupper($matches[0]);
    }
  ], $str);
  echo $res;
?>

ကုဒ် လုပ်ဆောင်ချက်၏ ရလဒ်:

php'A1B4C9'

ဥပမာ

ရက်စွဲများကို ပုံစံတစ်မျိုးမှ အခြားတစ်မျိုးသို့ ပြောင်းလဲပြီး နံပါတ်များကို စာလုံးထူဖြင့် မှတ်သားကြပါစို့:

php<?php
  $text = 'Date: 2023-05-15';
  $res = preg_replace_callback_array([
    '/(\d{4})-(\d{2})-(\d{2})/' => function($matches) {
      return $matches[3].'.'.$matches[2].'.'.$matches[1];
    },
    '/\d+/' => function($matches) {
      return '<b>'.$matches[0].'</b>';
    }
  ], $text);
  echo $res;
?>

ကုဒ် လုပ်ဆောင်ချက်၏ ရလဒ်:

php'Date: <b>15</b>.<b>05</b>.<b>2023</b>'

ဤသည်ကိုလည်း ကြည့်ရှုပါ

  • preg_replace_callback လုပ်ဆောင်ချက်၊
    သည် Callback လုပ်ဆောင်ချက်တစ်ခုဖြင့် အစားထိုးခြင်းကို လုပ်ဆောင်ပေးပါသည်
  • preg_replace လုပ်ဆောင်ချက်၊
    သည် ရီဂျက်စ်ပရက်ရှင်းဖြင့် အစားထိုးခြင်းကို လုပ်ဆောင်ပေးပါသည်