PHP တွင် break ၏ မလိုအပ်မှု
break command သည် မဖြစ်မနေ ထည့်ရန်မလိုအပ်ပါ။
သို့သော် ၎င်းမပါရှိပါက case blocks ၏ အပြုအမူသည်
မမျှော်လင့်ထားသောပုံစံဖြစ်လာမည်။ ဥပမာတစ်ခုဖြင့် ကြည့်ရအောင်။
ကျွန်ုပ်တို့တွင် အောက်ပါကုဒ်ရှိသည်ဆိုပါစို့။
<?php
$num = 1;
switch ($num) {
case 1:
echo 1;
break;
case 2:
echo 2;
break;
case 3:
echo 3;
break;
}
?>
၎င်းထဲမှ break အားလုံးကို ဖယ်ရှားပါမည်။
$num variable ထဲတွင် အစက 3 ကိန်းကို ရေးထည့်ကြပါစို့။
အစပိုင်းတွင် အားလုံးသည် ယခင်အတိုင်း အလုပ်လုပ်နေမည်။
<?php
$num = 3; // ဤနေရာတွင် ဂဏန်း 3 ရှိသည်ဆိုပါစို့
switch ($num) {
case 1:
echo 1;
case 2:
echo 2;
case 3:
echo 3;
}
// Run ပြီးနောက် ကုဒ်သည် 3 ကို output ပေးမည် - အားလုံးကောင်းပါသည်
?>
ယခု $num variable ထဲသို့
2 ကိန်းကို ရေးထည့်ကြည့်ပါစို့။ ဤကိစ္စတွင် ကျွန်ုပ်တို့
case 2 ကို မျှော်လင့်ထားသည့်အတိုင်း execute လုပ်မည်၊ ထို့နောက်
case 3 ကိုပါ အမှတ်မထင် execute လုပ်မည်။
<?php
$num = 2;
switch ($num) {
case 1:
echo 1;
case 2:
echo 2;
case 3:
echo 3;
}
// Run ပြီးနောက် ကုဒ်သည် 2၊ ထို့နောက် 3 ကို output ပေးမည်
?>
အကယ်၍ $num variable ထဲသို့
1 ကိန်းကို ရေးထည့်ပါက၊
case တည်ဆောက်မှုအားလုံး execute လုပ်သွားမည်။
<?php
$num = 1;
switch ($num) {
case 1:
echo 1;
case 2:
echo 2;
case 3:
echo 3;
}
// Run ပြီးနောက် ကုဒ်သည် 1၊ ထို့နောက် 2၊ ထို့နောက် 3 ကို output ပေးမည်
?>
ဆိုလိုသည်မှာ break မရှိပါက၊
ရည်ရွယ်ထားသော case လုပ်ဆောင်ပြီးနောက်၊
၎င်းအောက်ရှိ case အားလုံးလည်း လုပ်ဆောင်သွားမည်ဖြစ်သည်။ တစ်ခါတစ်ရံ
ဤထူးခြားချက်ကို ပြဿနာများဖြေရှင်းရာတွင် အသုံးပြုကြသည်။
အောက်ပါဥပမာတွင်၊ $num variable သည်
1 သို့မဟုတ် 2 တန်ဖိုးရှိပါက၊
$res variable ထဲသို့ 'a' ကို ရေးထည့်မည်။
အကယ်၍ $num variable သည်
3 တန်ဖိုးရှိပါက၊ $res variable ထဲသို့
'b' ကို ရေးထည့်မည်။
<?php
$num = 1;
switch ($num) {
case 1:
case 2:
$res = 'a';
break;
case 3:
$res = 'b';
break;
}
echo $res;
?>
အထက်တွင်ကျွန်ုပ် ရေးသားခဲ့သည်မှာ တစ်ခါတစ်ရံဤထူးခြားချက်ကို အသုံးပြုကြသည်၊ သို့သော် ယေဘုယျအားဖြင့် ၎င်းကို အသုံးပြုရန် အကြံမပြုလိုပါ၊ အဘယ်ကြောင့်ဆိုသော် ကုဒ်သည် သိသိသာသာ မရှင်းလင်းတော့သောကြောင့်ဖြစ်သည်။
ထိုကဲ့သို့သော တာဝန်ကို if များဖြင့် ဖြေရှင်းခြင်းသည် ပို၍ရှင်းလင်းသည်။
<?php
$num = 1;
if ($num == 1 or $num == 2) {
$res = 'a';
}
if ($num == 3) {
$res = 'b';
}
echo $res;
?>