PHP တွင် တည်ဆောက်ထားသော လုပ်ဆောင်ချက်များမှတစ်ဆင့် အကောင်းဆုံးဖြစ်အောင် ပြုလုပ်ခြင်း

ပရိုဂရမ်မာတစ်ဦးသည် ခင်းကျင်းထားသော ဒေတာအတွင် နံပါတ် 5 ပါရှိမရှိ စစ်ဆေးသည်ဆိုပါစို့:

php<?php
  $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
  
  $exists = false;
  foreach ($arr as $elem) {
    if ($elem == 5) {
      $exists = true;
      break; // အပိုအကြိမ်များ လည်မနေစေရန် loop မှ ထွက်မည်
    }
  }
  
  var_dump($exists);
?>

ဒီကုဒ်နဲ့ ဘာတစ်ခုမှာမှားနေတယ်လို့ ငါကပြောမယ်။ ဘာမှားတာလဲ၊ နံပါတ် 3 ကို တွေ့ပြီးတဲ့နောက် loop ကနေ ထွက်လိုက်တယ်မဟုတ်လား။ ပြဿနာက PHP မှာ တည်ဆောက်ထားတဲ့ လုပ်ဆောင်ချက်တွေဟာ အလားတူ ကိုယ်တိုင်ရေးကုဒ်ထက် အဆင့်တစ်ခုလုံး ပိုမြန်တယ် ဆိုတာပဲ။

ကျွန်ုပ်တို့၏ အခြေအနေတွင် in_array လုပ်ဆောင်ချက် ရှိပါသည်။ ထိုလုပ်ဆောင်ချက်သည် ပေးထားသော ပြဿနာကို ဖြေရှင်းပေးသည်။ ထို့ကြောင့် ထိုလုပ်ဆောင်ချက်ကိုသာ အသုံးပြုသင့်သည်:

php<?php
  $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
  var_dump(in_array(3, $arr));
?>

သင်ခန်းစာ: အလုပ်တစ်ခုကို မဖြေရှင်းမီ သင့်ပြဿနာအတွက် PHP မှာ တည်ဆောက်ထားတဲ့ လုပ်ဆောင်ချက် ရှိမရှိ မဖြစ်မနေ စစ်ဆေးပါ။

Задание 1

အောက်ပါကုဒ်တွင် ပရိုဂရမ်မာတစ်ဦးသည် ခင်းကျင်းထားသော ဒေတာ၏ အစုစုပေါင်းကို ရှာဖွေနေပါသည်။ ထိုပရိုဂရမ်မာ၏ ဖြေရှင်းချက်ကို အကောင်းဆုံးဖြစ်အောင် ပြုလုပ်ပါ။

ကုဒ်မှာ ဤသို့ဖြစ်သည်:

php<?php
  $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
  
  $sum = 0;
  foreach ($arr as $elem) {
    $sum += $elem;
  }
  echo $sum;
?>
Задание 2

အောက်ပါကုဒ်တွင် ပရိုဂရမ်မာတစ်ဦးသည် ခင်းကျင်းထားသော ဒေတာ၏ အမြောက်လဒ်ကို ရှာဖွေနေပါသည်။ ထိုပရိုဂရမ်မာ၏ ဖြေရှင်းချက်ကို အကောင်းဆုံးဖြစ်အောင် ပြုလုပ်ပါ:

php<?php
  $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
  
  $res = 1;
  foreach ($arr as $elem) {
    $res *= $elem;
  }
  echo $res;
?>