match တည်ဆောက်မှု

match တည်ဆောက်မှုသည် PHP 8.0 တွင် ပေါ်ထွက်လာပြီး switch နှင့် နှိုင်းယှဉ်ပါက ပိုမိုတိုတောင်းပြီး ဘေးကင်းသော ခွဲခြားဆောင်ရွက်နည်းကို ပေးစွမ်းသည်။ ၎င်းသည် နှိုင်းယှဉ်ရန် ဖော်ပြချက်တစ်ခုကို လက်ခံပြီး ကိုက်ညီသော ပထမဆုံးအခြေအနေ၏ တန်ဖိုးကို ပြန်ပေးသည်။ switch နှင့် မတူဘဲ၊ match သည် တင်းကျပ်သော နှိုင်းယှဉ်ခြင်း (===) ကို လုပ်ဆောင်ပြီး break မလိုအပ်ပါ။

ဝါကျဖွဲ့ပုံ

php$result = match ($value) {
  condition1 => result1,
  condition2 => result2,
  ...
  default => default_result
};

ဥပမာ

နံပါတ်တစ်ခုကို ရိုးရှင်းစွာ နှိုင်းယှဉ်ခြင်း။

php<?php
  $res = match (2) {
    1 => 'One',
    2 => 'Two',
    3 => 'Three',
    default => 'Unknown'
  };
  echo $res;
?>

ကုဒ်လုပ်ဆောင်မှု၏ ရလဒ်။

php'Two'

ဥပမာ

အခြေအနေများစွာဖြင့် နှိုင်းယှဉ်ခြင်း။

php<?php
  $age = 25;
  $res = match (true) {
    $age < 18 => 'Child',
    $age >= 18 && $age < 65 => 'Adult',
    $age >= 65 => 'Senior'
  };
  echo $res;
?>

ကုဒ်လုပ်ဆောင်မှု၏ ရလဒ်။

php'Adult'

ဥပမာ

အခင်းအကျင်းများနှင့်အတူ အသုံးပြုခြင်း။

php<?php
  $arr = [1, 2, 3];
  $res = match ($arr) {
    [1, 2, 3] => 'First sequence',
    [4, 5, 6] => 'Second sequence',
    default => 'Other sequence'
  };
  echo $res;
?>

ကုဒ်လုပ်ဆောင်မှု၏ ရလဒ်။

php'First sequence'

အခြားကြည့်ရှုရန်

  • switch အော်ပရေတာ၊
    အရာသည် ခွဲခြားဆောင်ရွက်ခြင်း၏ အပြောင်းအလဲနည်းလမ်းကို ပေးသည်
  • if လုပ်ဆောင်ချက်၊
    အရာသည် သတ်မှတ်ချက်အော်ပရေတာများကို လုပ်ဆောင်သည်