လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP တန်ဖိုးလွှဲပြောင်းယန္တရား၏နက်ရှိုင်းသောနားလည်မှု - နိယာမနှင့်လျှောက်လွှာခွဲခြမ်းစိတ်ဖြာခြင်း

PHP တန်ဖိုးလွှဲပြောင်းယန္တရား၏နက်ရှိုင်းသောနားလည်မှု - နိယာမနှင့်လျှောက်လွှာခွဲခြမ်းစိတ်ဖြာခြင်း

M66 2025-07-13

တန်ဖိုးလွှဲပြောင်း၏အခြေခံအယူအဆ

PHP သည်ဝက်ဘ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုသော server-side scripting language ဖြစ်သည်။ PHP တွင် parameters တွေကိုဖြတ်သန်းရန်နည်းလမ်းနှစ်မျိုးရှိသည်။ တန်ဖိုးနှင့်ရည်ညွှန်းခြင်းဖြင့်တန်ဖိုး။ ဤဆောင်းပါးသည် PHP ရှိတန်ဖိုးလွှဲပြောင်းယန္တရားကိုအာရုံစိုက်ပြီးစာဖတ်သူများအားဤအယူအဆကိုတိကျသောသင်္ကေတများဖြင့်မာစတာအောင်ကူညီလိမ့်မည်။

Value Passing သည် function ၏ပြင်ပ parameters များကို function အတွင်းရှိပြင်ပ parameters တွေကိုကူးယူရန်ရည်ရွယ်သည်။ function အတွင်းရှိ parameters များကိုပြုပြင်ခြင်းသည်ပြင်ပ variable ကိုထိခိုက်လိမ့်မည်မဟုတ်ပါ။ တန်ဖိုးဖြတ်သန်းခြင်းကိုအခြေခံဒေတာအမျိုးအစားများ (ဥပမာကိန်းများ, ရေပေါ်နံပါတ်များ, ကြိုးများစသည်တို့) တွင်အသုံးပြုသည်။ ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။

 <?php
function addNumber($num) {
    $num = $num + 10;
    return $num;
}
$number = 5;
$newNumber = addNumber($number);
echo "မူရင်းတန်ဖိုး:" . $number . "<br>";  // ထုတ်လုပ်ခြင်း 5
echo "ပြုပြင်ထားသောတန်ဖိုး:" . $newNumber;  // ထုတ်လုပ်ခြင်း 15
?>

အထက်ပါကုဒ်နမူနာတွင် function addnumber သည် parameter $ num ကိုလက်ခံရရှိပြီး 10 ထပ်ထည့်ပြီးနောက်တန်ဖိုးကိုပြန်ပို့သည်။ သို့သော် function ၏အတွင်းပိုင်းပြုပြင်မွမ်းမံခြင်း၏တန်ဖိုးကိုဒေါ်လာအရေအတွက်၏တန်ဖိုးကိုမထိခိုက်ပါ။

အရာဝတ်ထုနှင့် array ၏တန်ဖိုးများကိုဖြတ်သန်း

Arrays နှင့် Objects များသည် PHP တွင်ကိုးကားချက်များဖြင့်ဖြတ်သန်းလေ့ရှိသော်လည်း၎င်းတို့သည်လွန်ခဲ့သည့်အတိုင်းဖြတ်သန်းသွားသည့်တန်ဖိုး၏ယန္တရားကိုလိုက်နာနေဆဲဖြစ်ပြီးသတ်သတ်မှတ်မှတ်အပြုအမူသည်ကျွန်ုပ်တို့မျှော်လင့်ထားသည့်အရာနှင့်ကွဲပြားနိုင်သည်။ ဤတွင် Object Value Passing ၏ဥပမာတစ်ခုဖြစ်သည်။

 <?php
class Person {
    public $name;
}
function changeName($obj) {
    $obj->name = 'Lucy';
}
$person = new Person();
$person->name = 'John';
changeName($person);
echo "မူရင်းအမည်:" . $person->name . "<br>";  // ထုတ်လုပ်ခြင်း John
echo "ပြုပြင်ထားသောအမည်:" . $person->name;  // ထုတ်လုပ်ခြင်း Lucy
?>

ဤဥပမာတွင်ပစ္စည်းသည် function changename သို့ဒေါ်လာတစ် ဦး ကိုယူထားသောအရာဝတ်ထုကိုဖြတ်သန်းသွားသောအခါလုပ်ငန်းသည်၎င်း၏ပိုင်ဆိုင်မှုတန်ဖိုးကိုပြည်တွင်း၌ပြောင်းလဲသွားသည်ကိုကျွန်ုပ်တို့တွေ့ရသည်။

Arrays အတွက်အလားတူအခြေအနေများလည်းသက်ဆိုင်သည်။ ဤနေရာတွင် array တန်ဖိုးများကိုဖြတ်သန်းခြင်း၏ဥပမာတစ်ခုဖြစ်သည်။

 <?php
function changeElement($arr) {
    $arr[0] = 100;
}
$array = [1, 2, 3];
changeElement($array);
echo "မူရင်းခင်းကျင်း:";
print_r($array);  // ထုတ်လုပ်ခြင်း [1, 2, 3]
?>

အပေါ်ကပြထားတဲ့အတိုင်း Array Element ကိုပြုပြင်မွမ်းမံပေမယ့်အပြင်မှာခင်းကျင်းမှုရဲ့တန်ဖိုးကိုမထိခိုက်ပါဘူး။

ကောက်ချက်

ဤဆောင်းပါးမှတစ်ဆင့် PHP တွင်တန်ဖိုးလွှဲပြောင်းရေးစနစ်ကိုပိုမိုနက်ရှိုင်းစွာနားလည်နိုင်သည်။ အခြေခံအချက်အလက်စာများအတွက် PHP သည်တန်ဖိုးရှိအချက်အလက်အမျိုးအစားများ (array နှင့် objects များကဲ့သို့) သည်ဖြတ်သန်းသွားသောလမ်းကြောင်းများကဲ့သို့လုပ်ဆောင်နေပါက, ထို့ကြောင့် developer များပရိုဂရမ်၏မှန်ကန်မှုကိုသေချာစေရန်ကုဒ်ရေးသားသည့်အခါကွဲပြားခြားနားသောလိုအပ်ချက်များကိုအညီ,