PHP ရှိ ပြန်လည်ခေါ်ယူခြင်း (Recursion) ဖြင့် အလုပ်လုပ်ခြင်း
Programming တွင် <recursion> ဟူသော ဝေါဟာရရှိပါသည်။ ၎င်းသည် function တစ်ခုက သူ့ဘာသာသူ ပြန်လည်ခေါ်ယူသည့် အခြေအနေဖြစ်သည်။
ဥပမာတစ်ခုဖြင့် ကြည့်ကြပါစို့။
Recursion ကို အသုံးပြု၍ နံပါတ်များကို <1> မှ <10> အထိ ထုတ်ပြပါမည်။
<?php
$i = 1;
function func()
{
global $i;
echo $i;
$i++;
if ($i <= 10){
func(); // ဤနေရာတွင် function သည် သူ့ဘာသာသူ ခေါ်ယူသည်
}
}
func();
?>
ဤကုဒ်သည် မည်သို့ အလုပ်လုပ်သည်ကို ဆွေးနွေးကြပါစို့။
ကျွန်ုပ်တို့တွင် global variable တစ်ခုဖြစ်သော <$i> နှင့် function တစ်ခုဖြစ်သော <func> ရှိသည်။ ၎င်း function အတွင်း၌ variable <$i> ၏ တန်ဖိုးကို console တွင် ထုတ်ပြပြီး၊ ထို့နောက် <++> လုပ်ဆောင်သည်။
ကျွန်ုပ်တို့၏ variable <$i> သည် <10> ထက် နည်းသို့မဟုတ် ညီမျှလျှင်၊ function ကို နောက်တစ်ကြိမ် ထပ်မံခေါ်ယူသည်။
Variable <$i> သည် global variable ဖြစ်သောကြောင့်၊ function ကို အသစ်ခေါ်ယူသည့်အခါတိုင်း ၎င်းအတွင်း၌ ယခင်ခေါ်ယူမှုတွင် သတ်မှတ်ထားသော variable <$i> ၏ တန်ဖိုးရှိမည် ဖြစ်သည်။
ထိုသို့ဆိုလျှင် function သည် <$i> သည် <10> ထက် မကြီးမချင်း သူ့ဘာသာသူ ခေါ်ယူနေမည် ဖြစ်သည်။
သတိပြုရမည်မှာ၊ ကျွန်ုပ်တို့၏ကိစ္စတွင် <if> မပါဘဲ function ကို စတင်ခေါ်ယူ၍ မရပါ။ အကယ်၍ ဤသို့လုပ်ဆောင်ပါက၊ function များ အဆုံးမရှိ ခေါ်ယူမှုများ ဖြစ်ပေါ်လာမည် ဖြစ်သည်။