လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP Object Magnicisplise Methody အသေးစိတ်ရှင်းလင်းချက် - PHP operator ကိုအသုံးပြုနည်း

PHP Object Magnicisplise Methody အသေးစိတ်ရှင်းလင်းချက် - PHP operator ကိုအသုံးပြုနည်း

gitbox 2025-06-17

1 ။ နိဒါန်း

အရာဝတ်ထုများအကြားဆက်နွယ်မှုကိုနှိုင်းယှဉ်ခြင်းကအရာဝတ်ထုကို ဦး စားပေး PHP applications များကိုတီထွင်သည့်အခါအထူးသဖြင့်အရာဝတ်ထုနှစ်ခုတန်းတူကိုဆုံးဖြတ်သည့်အခါအလေ့အကျင့်တစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည် PHP တွင်အရာဝတ်ထုနှိုင်းယှဉ်မှု၏နက်နဲသောနည်းလမ်းများနှင့်အခြေခံမူများကိုလေ့လာလိမ့်မည်။

2 ။ PHP တွင်အရာဝတ်ထုများ၏နှိုင်းယှဉ်

PHP တွင်ကျွန်ုပ်တို့သည် (ဥပမာ - ==,! ===, ===, ===, ===, ===, ===, ===) ကိုသုံးနိုင်သည်။ ဤအော်ပရေတာများသည်အရာဝတ်ထုနှစ်ခုသည်တန်းတူဖြစ်ပြီးတူညီသောအမျိုးအစားနှင့်တူညီမှုရှိမရှိဆုံးဖြတ်ရန်ကူညီနိုင်သည်။ ဤတွင်နှိုင်းယှဉ်အော်ပရေတာတစ်ခုစီ၏အသေးစိတ်ဖော်ပြချက်ဖြစ်သည်။

  • ==: အရာဝတ်ထုနှစ်ခုရဲ့ attribute တန်ဖိုးများတန်းတူရှိမရှိဆုံးဖြတ်ပါ။
  • ! = - အရာဝတ်ထုနှစ်ခုရဲ့ attribute တန်ဖိုးများကိုတန်းတူမဟုတ်လားဆိုတာဆုံးဖြတ်ပါ။
  • ===: အရာဝတ်ထုနှစ်ခုသည်တူညီသောအရာဝတ်ထုတစ်ခုဖြစ်ခြင်းရှိမရှိဆုံးဖြတ်ရန် (ဆိုလိုသည်မှာတူညီသောမှတ်ဉာဏ်လိပ်စာကိုညွှန်ပြသည်)
  • ! ==: အရာဝတ်ထုနှစ်ခုသည်တူညီသောအရာဝတ်ထုမဟုတ်ကြောင်းဆုံးဖြတ်ရန် (ဆိုလိုသည်မှာကွဲပြားသောမှတ်ဉာဏ်လိပ်စာများကိုညွှန်ပြသည်)

2.1 == အော်ပရေတာ

"==" အော်ပရေတာကိုအသုံးပြုသောအခါ PHP သည်အရာဝတ်ထုနှစ်ခု၏ပိုင်ဆိုင်မှုတန်ဖိုးများသည်အတူတူပင်ဖြစ်သည်။ ထပ်တူပြန်ပို့ပါ။

 $obj1 = new stdClass();
$obj2 = new stdClass();
$obj1->name = 'Zhang San';
$obj1->age = 20;
$obj2->name = 'Zhang San';
$obj2->age = 20;

if ($obj1 == $obj2) {
    echo 'နှစ်ခုအရာဝတ်ထုတန်းတူဖြစ်ကြသည်';
} else {
    echo 'နှစ်ခုအရာဝတ်ထုတန်းတူကြသည်မဟုတ်';
}

အထက်ဖော်ပြပါကုဒ်များတွင်အရာဝတ်ထုနှစ်ခု၏ attribute တန်ဖိုးများသည်အတူတူပင်ဖြစ်သည့်အတွက် "အရာဝတ်ထုနှစ်ခုသည်တန်းတူ" ဖြစ်သည်။

2.2! = အော်ပရေတာ

"! =" အော်ပရေတာသည်အရာဝတ်ထုနှစ်ခု၏ attribute တန်ဖိုးများကိုတန်းတူမဟုတ်ကြောင်းစစ်ဆေးရန်အသုံးပြုသည်။ တန်းတူမဟုတ်လျှင်စစ်မှန်ပါ။

 $obj1 = new stdClass();
$obj2 = new stdClass();
$obj1->name = 'Zhang San';
$obj1->age = 20;
$obj2->name = 'li si';
$obj2->age = 30;

if ($obj1 != $obj2) {
    echo 'နှစ်ခုအရာဝတ်ထု၏ attribute တန်ဖိုးများတန်းတူမဟုတ်ကြဘူး';
} else {
    echo 'နှစ်ခုအရာဝတ်ထု၏ attribute တန်ဖိုးများတန်းတူဖြစ်ကြသည်';
}

attribute နှစ်ခု၏ attribute တန်ဖိုးများကွဲပြားခြားနားသောကြောင့် code သည် "အရာဝတ်ထုနှစ်ခု၏ attribute တန်ဖိုးများသည်တန်းတူမဟုတ်ပါ။

2.3 === အော်ပရေတာ

"===" အော်ပရေတာသည်အရာဝတ်ထုနှစ်ခုသည်တူညီသောအရာဝတ်ထုတစ်ခုတည်းသောအရာဝတ်ထုတစ်ခုဟုတ်မဟုတ်စစ်ဆေးရန်အသုံးပြုသည်။ i.e.

 $obj1 = new stdClass();
$obj2 = $obj1;

if ($obj1 === $obj2) {
    echo 'နှစ်ခုအရာဝတ်ထုတူညီတဲ့အရာဝတ်ထုဖြစ်ကြသည်';
} else {
    echo 'နှစ်ခုအရာဝတ်ထုတူညီသောအရာဝတ်ထုမဟုတ်ပါဘူး';
}

အထက်ဖော်ပြပါကုဒ်သည် $ Obj2 သည်ဒေါ်လာ OBJ1 ၏မှတ်ဉာဏ်လိပ်စာကိုမှတ်မိသောကြောင့် "အရာဝတ်ထုနှစ်ခုသည်တူညီသောအရာဝတ်ထုတစ်ခုဖြစ်သည်"

2.4! == အော်ပရေတာ

အဆိုပါ "! ==" အော်ပရေတာသည် "===" ၏အချိုးကျအော်ပရေတာဖြစ်ပြီးအရာဝတ်ထုနှစ်ခုသည်တူညီသောအရာဝတ်ထုမဟုတ်သောအရာတစ်ခုမရှိမရှိဆုံးဖြတ်ရန်အသုံးပြုသည်။ သူတို့ကွဲပြားခြားနားသောမှတ်ဉာဏ်လိပ်စာများကိုညွှန်ပြပါကစစ်မှန်ပါ။

 $obj1 = new stdClass();
$obj2 = $obj1;
$obj3 = new stdClass();

if ($obj1 !== $obj3) {
    echo 'နှစ်ခုအရာဝတ်ထုတူညီသောအရာဝတ်ထုမဟုတ်ပါဘူး';
} else {
    echo 'နှစ်ခုအရာဝတ်ထုတူညီတဲ့အရာဝတ်ထုဖြစ်ကြသည်';
}

$ OBJ1 နှင့် $ OBJ3 အမှတ်သည်မတူကွဲပြားသောမှတ်ဉာဏ်လိပ်စာများသို့အမှတ်အသားပြုရန်ကုဒ်သည် "အရာဝတ်ထုနှစ်ခုသည်တူညီသောအရာဝတ်ထုမဟုတ်" ပါလိမ့်မည်။

3 ။ အရာဝတ်ထုများ၏နှိုင်းယှဉ်၏နိယာမ

PHP သည်အရာဝတ်ထုနှိုင်းယှဉ်မှုကိုလုပ်ဆောင်သောအခါအရာဝတ်ထုကိုအရာဝတ်ထုတစ်ခုသို့ပြောင်းလဲရန်နှင့်နှိုင်းယှဉ်ရန်အရာဝတ်ထု၏ __tostring () နည်းလမ်းကိုပုံမှန်အားဖြင့်ခေါ်ဆိုလိမ့်မည်။ အကယ်. အရာဝတ်ထုသည် __tostring () နည်းလမ်းကိုအကောင်အထည်ဖော်မထားပါကဆိုးဝါးသောအမှားကိုထုတ်ပေးလိမ့်မည်။ ဤပြ problem နာကိုရှောင်ရှားရန်အရာဝတ်ထုနှိုင်းယှဉ်မှုများပြုလုပ်သောအခါအရာဝတ်ထုကိုအရာဝတ်ထုကိုအကောင်အထည်ဖော်ရန်သေချာစေရန်အကြံပြုသည်။

မှတ်ချက်ချသည်မှာ PHP သည်အရာဝတ်ထုများကိုနှိုင်းယှဉ်သောအခါ၎င်းသည်အရာဝတ်ထု၏ attribute တန်ဖိုးများကိုနှိုင်းယှဉ်မည်ဖြစ်သော်လည်းထိုနည်းလမ်းများကိုနှိုင်းယှဉ်မည်မဟုတ်။ အကယ်. အရာဝတ်ထုနှစ်ခုသည်တူညီသောဂုဏ်သတ္တိများရှိသော်လည်းကွဲပြားသောနည်းလမ်းများရှိသော်လည်း PHP သည်၎င်းတို့အားတန်းတူညီမျှဖြစ်ရန်စဉ်းစားနေ ဦး မည်။

4 ။ အကျဉ်းချုပ်

ဤဆောင်းပါးသည် PHP နှင့်ဆက်စပ်အော်ပရေတာများတွင်အရာဝတ်ထုများကိုနှိုင်းယှဉ်ခြင်းအတွက်ဘုံနည်းလမ်းများကိုမိတ်ဆက်ပေးသည် (==,! =, ==, ==) အရာဝတ်ထုများကိုနှိုင်းယှဉ်သောအခါကျွန်ုပ်တို့သည်အရာဝတ်ထု၏ပိုင်ဆိုင်မှုတန်ဖိုးများကိုအာရုံစိုက်သင့်သည်။ တစ်ချိန်တည်းမှာပင်နှိုင်းယှဉ်နေစဉ်အတွင်းအမှားများကိုရှောင်ရှားရန်အရာဝတ်ထု __tostring () နည်းလမ်းကိုသေချာအောင်လုပ်ပါ။