⊗ppOpIhOI 36 of 107 menu

PHP တွင် instanceof operator နှင့် OOP inheritance

instanceof operator ကိုအသုံးပြုသည့်အခါ inheritance ၏ ထူးခြားချက်များကို ကြည့်ရအောင်။ ကျွန်ုပ်တို့တွင် မိဘ class နှင့် ကလေး class ရှိသည်ဆိုပါစို့။

<?php // မိဘ class: class ParentClass { } // ကလေး class: class ChildClass extends ParentClass { } ?>

ကလေး class ၏ object တစ်ခုကို ဖန်တီးကြပါစို့။

<?php $obj = new ChildClass; ?>

ယခု instanceof ကို အသုံးပြု၍ ကျွန်ုပ်တို့၏ object သည် ParentClass နှင့် ChildClass သို့ သက်ဆိုင်မှုရှိမရှိ စစ်ဆေးကြည့်ပါ။

<?php var_dump($obj instanceof ChildClass); // true ပြမည် var_dump($obj instanceof ParentClass); // true ပြမည် ?>

ဥပမာမှတစ်ဆင့် သင်မြင်တွေ့ရသည့်အတိုင်း instanceof operator သည် မိဘ class များနှင့် ကလေး class များကို စစ်ဆေးရာတွင် ခွဲခြားခြင်းမပြုပါ။

မရောထွေးပါနှင့် - အကယ်၍ object သည် မိဘ class ၏ object စစ်စစ်ဖြစ်ပါက ကလေး class သို့သက်ဆိုင်မှုကို စစ်ဆေးသည့်အခါ false ပြန်ပေးမည်မှာ အမှန်ပင်။

<?php $obj = new ParentClass; // မိဘ class ၏ object var_dump($obj instanceof ParentClass); // true ပြမည် var_dump($obj instanceof ChildClass); // false ပြမည် ?>

User class ကို public property name နှင့် surname များဖြင့် ပြုလုပ်ပါ။

Employee class ကို User class မှ inheritance လုပ်၍ salary property ထပ်ထည့်ပါ။

City class ကို public property name နှင့် population များဖြင့် ပြုလုပ်ပါ။

User class ၏ object ၃ ခု၊ Employee class ၏ object ၃ ခု၊ City class ၏ object ၃ ခုကို ဖန်တီးကာ စိတ်ကြိုက် အစီအစဥ်ဖြင့် $arr array ထဲသို့ ရေးထည့်ပါ။

$arr array ကို loop ဖြင့် ဖြတ်သန်းပြီး User class သို့မဟုတ် ထို class ၏ အမွေဆက်ခံသည့် class များသို့ သက်ဆိုင်သော object များ၏ name property များကို column တစ်ခုအနေဖြင့် screen တွင် ပြသပါ။

$arr array ကို loop ဖြင့် ဖြတ်သန်းပြီး User class သို့မဟုတ် ထို class ၏ အမွေဆက်ခံသည့် class များသို့ မသက်ဆိုင်သော object များ၏ name property များကို column တစ်ခုအနေဖြင့် screen တွင် ပြသပါ။

$arr array ကို loop ဖြင့် ဖြတ်သန်းပြီး User class သို့သာ သက်ဆိုင်သော၊ ဆိုလိုသည်မှာ City class သို့မဟုတ် Employee class သို့ မသက်ဆိုင်သော object များ၏ name property များကို column တစ်ခုအနေဖြင့် screen တွင် ပြသပါ။

မြန်မာ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ဝက်ဘ်ဆိုက် လုပ်ဆောင်ခြင်း၊ ဆန်းစစ်လေ့လာခြင်းနှင့် ပုဂ္ဂလိကပြုပြင်ခြင်းအတွက် ကျွန်ုပ်တို့သည် cookie များကို အသုံးပြုပါသည်။ ဒေတာများကို ပြုပြင်ခြင်းသည် ကိုယ်ရေးကိုယ်တာ မူဝါဒအတိုင်း ဖြစ်ပါသည်။
အားလုံးလက်ခံရန် ပြင်ဆင်ရန် ငြင်းပယ်ရန်