PHP ရှိ လင့်ခ်များ

PHP တွင် ကိန်းရှင်တစ်ခု၏ တန်ဖိုးကို အခြားတစ်ခုသို့ သတ်မှတ်ပေးနိုင်ပါသည်။

php<?php
  $num1 = 1;
  $num2 = $num1; // သတ်မှတ်ပေးသည်
  
  echo $num1; // 1
  echo $num2; // 1
?>

ထိုသို့သတ်မှတ်ပေးခြင်းဖြင့် ပထမကိန်းရှင်၏ တန်ဖိုးကို ကူးယူကာ အသစ်ကိန်းရှင်ထဲသို့ ထည့်သွင်းပေးသည်။ ဆိုလိုသည်မှာ ကိန်းရှင်နှစ်ခုသည် တစ်ခုနှင့်တစ်ခု ဆက်စပ်မှုမရှိဘဲ အချင်းချင်း လွတ်လပ်စွာ ပြောင်းလဲနိုင်သည်ဟု ဆိုလိုပါသည်။ ကုဒ်နမူနာကို ကြည့်ပါ။

php<?php
  $num1 = 1;
  $num2 = $num1;
  $num2 = 2;
  
  echo $num1; // 1 - မပြောင်းလဲပါ
?>

သို့သော် ကိန်းရှင်၏ တန်ဖိုးကို ကူးယူရန် မဟုတ်ဘဲ ၎င်း၏ လင့်ခ်ကို ကူးယူရန် ပြုလုပ်နိုင်သည်။ ဤသို့ဆိုပါက ကိန်းရှင်တစ်ခု၏ တန်ဖိုးကို ပြောင်းလဲလိုက်သည့်အခါ အခြားတစ်ခု၏ တန်ဖိုးလည်း ပြောင်းလဲသွားမည်ဖြစ်သည်။

တန်ဖိုးကို လင့်ခ်အနေဖြင့် လွှဲပြောင်းရန် ကိန်းရှင်အမည်၏ ရှေ့တွင် ampersand (&) ကို ထည့်သွင်းရပါမည်။

php<?php
  $num1 = 1;
  $num2 = &$num1; // လင့်ခ်အနေဖြင့် လွှဲပြောင်းသည်
?>

ယခုတွင် ပထမကိန်းရှင်၏ တန်ဖိုးကို ပြောင်းလဲလိုက်ပါက ဒုတိယကိုလည်း ပြောင်းလဲသွားစေမည်ဖြစ်သည်။

php<?php
  $num1 = 1;
  $num2 = &$num1;
  $num2 = 2;
  
  echo $num1; // 2 - ပြောင်းလဲသွားသည်
?>

အလားတူစွာ ကျွန်ုပ်တို့ ပထမကိန်းရှင်ကို ပြောင်းလဲပါက ဒုတိယကိုလည်း ပြောင်းလဲသွားစေမည်ဖြစ်သည်။

php<?php
  $num1 = 1;
  $num2 = &$num1;
  $num1 = 2;
  
  echo $num2; // 2
?>
Задание 1

အောက်ပါကုဒ်ကို လုပ်ဆောင်လိုက်ပါက ရလဒ်မည်သို့ရှိမည်ကို ရှင်းပြပါ။

php<?php
  $num1 = 1;
  $num2 = $num1;
  $num2 = 2;
  
  echo $num1;
  echo $num2;
?>
Задание 2

အောက်ပါကုဒ်ကို လုပ်ဆောင်လိုက်ပါက ရလဒ်မည်သို့ရှိမည်ကို ရှင်းပြပါ။

php<?php
  $num1 = 1;
  $num2 = &$num1;
  $num2++;
  
  echo $num1;
  echo $num2;
?>
Задание 3

အောက်ပါကုဒ်ကို လုပ်ဆောင်လိုက်ပါက ရလဒ်မည်သို့ရှိမည်ကို ရှင်းပြပါ။

php<?php
  $num1 = 1;
  $num2 = $num1;
  
  $num1++;
  $num2++;
  
  echo $num1;
  echo $num2;
?>
Задание 4

အောက်ပါကုဒ်ကို လုပ်ဆောင်လိုက်ပါက ရလဒ်မည်သို့ရှိမည်ကို ရှင်းပြပါ။

php<?php
  $num1 = 1;
  $num2 = &$num1;
  
  $num1++;
  $num2++;
  
  echo $num1;
  echo $num2;
?>