Object Reactoral Mapping (Orm) သည် PHP နှင့် Relational databases ကဲ့သို့သောအရာဝတ်ထု oriented ပရိုဂရမ်ဘာသာစကားများကို mySQL ကဲ့သို့သောအရာဝတ်ထု ဦး စားပေးပရိုဂရမ်များကိုပေါင်းကူးပေးရန်အသုံးပြုသောနည်းပညာဖြစ်သည်။ ၎င်းသည် developer များကိုဒေတာဘေ့စ်များတွင်အချက်အလက်များကိုအရာဝတ်ထု ဦး စားပေးထုံးစံ၌အချက်အလက်များကိုပြုလုပ်ရန်, ဒေတာလုပ်ငန်းများကိုရိုးရှင်းလွယ်ကူစေရန်နှင့်ဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်ကိုအရှိန်မြှင့်တင်ပေးသည်။
PHP framework တွင် Orm အကောင်အထည်ဖော်မှု၏အဓိကစည်းမျဉ်းများတွင်အောက်ပါအချက်များပါ 0 င်သည်။
Orm သည် domain model တစ်ခုကိုသတ်မှတ်ခြင်းဖြင့်ဒေတာဘေ့စ်တွင်အချက်အလက်များကိုကိုယ်စားပြုသည်။ ဒိုမိန်းမော်ဒယ်သည်များသောအားဖြင့်အရာဝတ်ထုတစ်ခုစီသည်ဒေတာဘေ့စ်တွင်အဖွဲ့အစည်းတစ်ခုသို့မဟုတ်စားပွဲပေါ်မှာကိုယ်စားပြုသည်။ ဤနည်းလမ်းသည် developer များအား SQL ထုတ်ပြန်ချက်များကိုတိုက်ရိုက်အရေးအသားမပြုဘဲ Object-Oriented အဆင့်တွင်ဒေတာဘေ့စ်မှတ်တမ်းများကိုတိုက်ရိုက်လုပ်ဆောင်ရန်ခွင့်ပြုသည်။
Orm သည်အရာဝတ်ထုတစ်ခု၏အခြေအနေကိုဒေတာဘေ့စ်သို့သိမ်းဆည်းနိုင်သည့်ဇွဲရှိသည့်ယန္တရားတစ်ခုပေးသည်။ အရာဝတ်ထုပြောင်းလဲမှု၏ဂုဏ်သတ္တိများသည်ဒေတာဘေ့စ်ကိုကိုယ်တိုင်မွမ်းမံခြင်းကိုရှောင်ရှားရန် Orm Framework သည် Database သို့အလိုအလျှောက်ထပ်တူပြုသည်။
Orm သည်ဒေတာသိုလှောင်မှုကိုရိုးရှင်းရုံသာမကဒေတာဘေ့စ်ကိုမေးမြန်းရန်နည်းလမ်းကိုလည်းထောက်ပံ့ပေးသည်။ ဤစုံစမ်းမှုနည်းလမ်းများသည်ရိုးရာ SQL syntax နှင့်ကွဲပြားသော်လည်းအရာဝတ်ထုမော်ဒယ်၏ဝေါဟာရများအပေါ်အခြေခံသည်။ developer များသည်ရှုပ်ထွေးသော SQL ထုတ်ပြန်ချက်များကိုရေးရန်မလိုအပ်ပါ။
Orm သည်အရာဝတ်ထုမော်ဒယ်ကို Relational Database မော်ဒယ်သို့မြေပုံရေးဆွဲရန်တာဝန်ရှိသည်။ ၎င်းတွင်အရာဝတ်ထု၏ဂုဏ်သတ္တိများ၏ဂုဏ်သတ္တိများကိုကော်လံများ, စားပွဲများနှင့်ဒေတာဘေ့စ်တွင်သူတို့၏ဆက်ဆံရေးကိုမည်သို့မြေပုံဆွဲရမည်။ ဤမြေပုံသည်အရာဝတ်ထုများအကြားဆက်နွယ်မှုကိုဒေတာဘေ့စ်တွင်ဆက်နွယ်မှုနှင့်ကိုက်ညီစေရန်ခွင့်ပြုသည်။
Laravel သည်အများအားဖြင့်အသုံးပြုသော PHP မူဘောင်တစ်ခုဖြစ်ပြီး၎င်း၏ eloquent orm သည်အထက်ပါ Orm ၏အဓိကစည်းမျဉ်းများကိုအကောင်အထည်ဖော်သည်။ လက်တွေ့တွင် eloquent Orm ၏အဓိကသော့ချက်အချို့ကိုဤတွင်ဖော်ပြထားသည်။
class User {
// ...
}
Laravel တွင် developer များက Crud ကိုအလွယ်တကူပြုလုပ်နိုင်သည် (ဖန်တီးခြင်း, ဖတ်ခြင်း, ဤတွင်ဘုံ Crud စစ်ဆင်ရေးဥပမာအချို့ကိုဤတွင်ဖော်ပြထားသည်။
// အသုံးပြုသူတစ် ဦး ကိုဖန်တီးပါ
$user = new User;
$user->name = 'John Doe';
$user->save();
// အသုံးပြုသူကိုဖတ်ပါ
$user = User::find(1);
// အသုံးပြုသူများကို update လုပ်ပါ
$user->name = 'Jane Doe';
$user->save();
// အသုံးပြုသူများကိုဖျက်ပါ
$user->delete();
ORM သည်မော်ဒယ်များအကြားအသင်းအဖွဲ့များကိုလည်းထောက်ပံ့သည်။ ဥပမာအားဖြင့် Laravel တွင်အသုံးပြုသူနှင့်ပို့စ်တစ်ခုအကြားဆက်သွယ်မှုကိုအောက်ပါနည်းလမ်းများဖြင့်ပြုလုပ်နိုင်သည်။
class User {
public function posts() {
return $this->hasMany(Post::class);
}
}
class Post {
public function user() {
return $this->belongsTo(User::class);
}
}
ဤစံပြအသင်းများမှတစ်ဆင့် developer များက developer များက DataBase စားပွဲများအကြားဆက်နွယ်မှုဆိုင်ရာလုပ်ငန်းများကိုအလွယ်တကူလုပ်ဆောင်နိုင်ပြီးရှုပ်ထွေးသော SQL တွင် Mandal SQL တွင်စာအရေးအသားကိုရှောင်ရှားနိုင်သည်။
Object Reactential Mapping (Orm) နည်းပညာသည် PHP Framework တွင် Object-Oriented Programming ကိုအကောင်အထည်ဖော်ရန်ပိုမိုထိရောက်စွာထိရောက်စေသည်။ ဒိုမိန်းမော်ဒယ်များကိုသတ်မှတ်ခြင်းဖြင့်ဇွဲမှုန်ယန္တရားများကိုသတ်မှတ်ခြင်း, Laravel's eloquent Orem သည်အလွန်ကောင်းသောအလေ့အကျင့်ဥပမာတစ်ခုဖြစ်သည်။