Object-Oriented Programming တွင် polymorphism သည်တူညီသောမက်ဆေ့ခ်ျကိုကွဲပြားစွာတုံ့ပြန်ရန်ကွဲပြားခြားနားသောအရာဝတ်ထုများ၏စွမ်းရည်ကိုရည်ညွှန်းသည်။ PHP တွင် polymorphism ကို interfaces နှင့်အမွေဆက်ဖြင့်ရရှိခဲ့သည်။ ဤဆောင်းပါးသည် PHP တွင် Polymorphism အယူအဆကိုအမှန်တကယ်ကုဒ်နမူနာများမှတဆင့်အသေးစိတ်ခွဲခြမ်းစိတ်ဖြာလိမ့်မည်။
ပထမ ဦး စွာကျွန်ုပ်တို့သည် calculateArea method ပါ 0 င်သည့် interface ပုံစံကိုဖန်တီးသည်။
interface Shape {
public function calculateArea();
}
ထို့နောက်ကျွန်ုပ်တို့သည်ပုံသဏ် into ာန် interface ကိုအကောင်အထည်ဖော်သည့်အတန်းနှစ်ခု, စက်ဝိုင်းနှင့်စတုရန်းနှစ်မျိုးဖန်တီးသည်။
class Circle implements Shape {
private $radius;
public function __construct($radius) {
$this->radius = $radius;
}
public function calculateArea() {
return round(pi() * pow($this->radius, 2), 2);
}
}
class Square implements Shape {
private $sideLength;
public function __construct($sideLength) {
$this->sideLength = $sideLength;
}
public function calculateArea() {
return pow($this->sideLength, 2);
}
}
ထို့နောက်ကျွန်ုပ်တို့သည် function functionaea ကိုသတ်မှတ်ပြီးပုံသဏ် into ာန် interface ကို parameter တစ်ခုအဖြစ်အကောင်အထည်ဖော်ရန်နှင့်၎င်း၏ calculatearea method ကိုခေါ်ဆိုသည့်အရာဝတ်ထုတစ်ခုကိုလက်ခံသည်။
function getShapeArea(Shape $shape) {
return $shape->calculateArea();
}
ယခုကျွန်ုပ်တို့သည်စက်ဝိုင်းနှင့်စတုရန်းအရာဝတ်ထုများကို ဖန်တီး. GetShapearea function ကို အသုံးပြု. 4 င်းတို့၏ဒေသများကိုတွက်ချက်နိုင်သည်။
$circle = new Circle(5);
$square = new Square(4);
echo "စက်ဝိုင်း area ရိယာ:" . getShapeArea($circle) . ";";
echo "ရင်ပြင်၏ရိယာ:" . getShapeArea($square) . "。";
ဤဥပမာတွင်စက်ဝိုင်းနှင့်စတုရန်းအတန်းများသည်ပုံသဏ် into ာရီများကိုအကောင်အထည်ဖော်။ calculatearea နည်းလမ်းကိုကျော်လွှားနိုင်သည်။ ကွဲပြားခြားနားသောအရာဝတ်ထုများကို getshapearea function သို့ဖြတ်သန်းခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် polymorphism ကိုရရှိရန်အတွက်ကျွန်ုပ်တို့သည် polymorphism ကိုရရှိနိုင်ပါသည်။
PHP တွင် polymorphism သည် interfaces နှင့်အမွေဆက်ဖြင့်အကောင်အထည်ဖော်ခြင်း, ဤယန္တရားသည်ကုဒ်ပြောင်းလွယ်ပြင်လွယ်ခြင်းနှင့်ပမာဏကိုတိုးတက်စေသည်။ Polymorphism ကိုကျိုးကြောင်းဆီလျော်စွာအသုံးပြုခြင်းသည်ကုဒ်ဖွဲ့စည်းပုံကိုရိုးရှင်းစေနိုင်သည်။