လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Laravel တွင် array_diff_assoc () ကိုပေါင်းစပ်ထားသောအချက်အလက်များခြားနားချက်နှိုင်းယှဉ်စေရန်ပေါင်းစပ်ပါ

Laravel တွင် array_diff_assoc () ကိုပေါင်းစပ်ထားသောအချက်အလက်များခြားနားချက်နှိုင်းယှဉ်စေရန်ပေါင်းစပ်ပါ

M66 2025-05-15

Laravel တွင် Form Data ကိုပြုပြင်သည့်အခါအချက်အလက်များကိုအထူးသဖြင့်အချက်အလက်များကိုမွမ်းမံသည့်အခါအချက်အလက်များကိုမွမ်းမံသည့်အခါအချက်အလက်များကိုမွမ်းမံသည့်အခါအချက်အလက်နှိုင်းယှဉ်မှုများပြုလုပ်ရန်လိုအပ်သည်။ PHP တွင်လုပ်ဆောင်ချက်များစွာရှိပြီး Arrraiff_Diff_assoC () ကိုနှိုင်းယှဉ်ရန်အသုံးပြုသောလုပ်ငန်းဆောင်တာများစွာရှိသည်။ Arrays နှစ်ခုအကြားခြားနားချက်ကိုရှာဖွေရန်ကျွန်ုပ်တို့အားကူညီနိုင်သည့်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။

ဒီဆောင်းပါးမှာ array_diff_assoc () ကို Laravel framework ကိုဘယ်လိုသုံးရမလဲဆိုတာကို Laravel framework မှာ data update data တွေကိုပိုပြီးထိထိရောက်ရောက်နှိုင်းယှဉ်ကူညီဖို့ဘယ်လိုသုံးရမလဲဆိုတာမိတ်ဆက်ပေးမယ်။

array_diff_assoc ဆိုတာဘာလဲ။

Array_diff_assoc () သည် array နှစ်ခုအကြားကွဲပြားခြားနားမှုများကိုနှိုင်းယှဉ်ရန် PHP မှပေးသော array function တစ်ခုဖြစ်သည်။ ၎င်းသည်ခင်းကျင်းအတွင်းရှိအဓိကအမည်များနှင့်အဓိကတန်ဖိုးများကိုဖော်ပြထားသည်။

function ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -

 array_diff_assoc(array $array1, array $array2): array
  • $ array1 : ပထမ ဦး ဆုံးခင်းကျင်း (ကုန်ကြမ်းဒေတာသို့မဟုတ်တင်သွင်းသောပုံစံဒေတာ) ။

  • $ array2 : ဒုတိယခင်းကျင်း (များသောအားဖြင့်ဒေတာဘေ့စ်တွင်ကုန်ကြမ်းအချက်အလက်များ) ။

array_diff_assoc () သည် ဒေါ်လာ array 1 တွင်တည်ရှိသည့်ဒြပ်စင်များပါ 0 င်သော array အသစ်တစ်ခုကိုပြန်လည်ရောက်ရှိစေသော်လည်း ဒေါ်လာ array2 တွင်မပါ 0 င်ပါ။

Laravel တွင်ပုံစံအချက်အလက်များကိုနှိုင်းယှဉ်ရန် Array_diff_AssoC () ကိုသုံးပါ

သင့်တွင်အချက်အလက်အချို့ကိုအသုံးပြုသူဖြည့်စွက်ထားသောပုံစံရှိသည်ဆိုပါစို့။ ဤအချက်အလက်ကိုဒေတာဘေ့စ်ရှိလက်ရှိအသုံးပြုသူအချက်အလက်နှင့်နှိုင်းယှဉ်ရန်လိုအပ်သည်ဆိုပါစို့။ မည်သည့်နယ်ပယ်ပြောင်းလဲခြင်းနှင့်မည်သည့်နယ်ပယ်ပြောင်းလဲခြင်းမရှိသေးကြောင်းရှာဖွေရန် array_diff_assoc () ကိုသုံးနိုင်သည်။

ဥပမာ - အသုံးပြုသူအချက်အလက်ကိုမွမ်းမံပါ

  1. Form Data ကိုလက်ခံရရှိသည် - ပထမ ဦး စွာအသုံးပြုသူမှတင်ပြသောပုံစံဒေတာကိုရယူပါ။

  2. အချက်အလက်များကိုရယူပါ ။ ဒေတာဘေ့စ်မှအချက်အလက်များကိုရှာဖွေပါ။

  3. နှိုင်းယှဉ်မှုကွာခြားချက် - ခြားနားချက်ကိုရှာဖွေရန် array_diff_assoc () ကိုသုံးပါ။

  4. ကွဲပြားခြားနားမှုများကိုကိုင်တွယ်ပါ ။ ကွဲပြားခြားနားမှုများအပေါ် အခြေခံ. မွမ်းမံမှုများလုပ်ဆောင်ပါ။

 use App\Models\User;

public function updateUserInfo(Request $request, $userId)
{
    // ပုံစံဒေတာကိုယူဆ
    $formData = $request->only(['name', 'email', 'password']);

    // အသုံးပြုသူအချက်အလက်များကိုဒေတာဘေ့စ်တွင်ရယူပါ
    $user = User::find($userId);
    $originalData = $user->only(['name', 'email', 'password']);

    // အသုံးပြု array_diff_assoc ဒေတာနှိုင်းယှဉ်
    $differences = array_diff_assoc($formData, $originalData);

    // ခြားနားချက်ရှိလျှင်,အသုံးပြုသူသတင်းအချက်အလက်ကို update လုပ်ပါ
    if (!empty($differences)) {
        $user->update($differences);

        // output ကိုကွဲပြားခြားနားအကြောင်းအရာ
        return response()->json([
            'message' => 'User data updated successfully.',
            'differences' => $differences
        ]);
    }

    return response()->json([
        'message' => 'No changes detected.',
    ]);
}

ရှင်းပြပါ -

  • $ FormData သည်အသုံးပြုသူမှတင်သွင်းသောပုံစံဒေတာဖြစ်သည်။ ၎င်းကို $ တောင်းခံခြင်းမှသာ ရရှိထားသည့်ပုံစံများကိုသာရရှိပြီး,

  • $ မူရင်းသည် ဒေတာဘေ့စ တွင်သိမ်းဆည်းထားသောမူရင်းအသုံးပြုသူအချက်အလက်ဖြစ်သည်။

  • array_diff_assoc ($ formdata, $ မူရင်းဒေါ်လာ) ကိုအသုံးပြုသူ၏တင်သွင်းထားသောအချက်အလက်များကိုနှိုင်းယှဉ်ရန်နှင့်နှစ်ခုအကြားခြားနားချက်ကိုပြန်ပို့ရန်အသုံးပြုသည်။

  • ခြားနားချက်တစ်ခုရှိပါကဒေတာဘေ့စ်ရှိဒေတာကို $ user-> update ကို ($ ကွဲပြားခြားနားမှု) မှတဆင့် data ကို update လုပ်ပါ။

array_diff_assoc ကိုအသုံးပြုခြင်း၏ကောင်းကျိုးများ ()

  • Concise နှင့် Clear : array_diff_assoc () array_diff_assoc () သည် array နှစ်ခုအကြားကွဲပြားခြားနားမှုများကိုလျင်မြန်စွာရှာဖွေနိုင်ပြီးကုဒ်သည်ရိုးရှင်းလွယ်ကူပြီးနားလည်ရန်လွယ်ကူသည်။

  • ထိရောက်သောစွမ်းဆောင်ရည် - Arrays များနှင့်နှိုင်းယှဉ်လျှင် array_diff_assoc () ကိုနှိုင်းယှဉ်သောအခါအဓိကအမည်များနှင့်အဓိကတန်ဖိုးများကိုကိုက်ညီခြင်း, ရှုပ်ထွေးသောကွင်းဆက်များနှင့်အခြေအနေဆိုင်ရာတရားစီရင်မှုများကိုရှောင်ရှားခြင်း,

  • ဒေတာများကိုအလွယ်တကူမွမ်းမံရန်လွယ်ကူသည် - ဒေတာအသစ်ပြောင်းခြင်းများပြုလုပ်သောအခါ array_diff_assoc () သည် အသုံးပြုသူမှတင်ပြသောပြောင်းလဲထားသောနယ်ပယ်များကိုတိကျစွာရှာတွေ့နိုင်ပြီးထိုပြောင်းလဲသွားသောအစိတ်အပိုင်းများကိုသာမွမ်းမံနိုင်သည်။

url ဥပမာပြင်ဆင်ခြင်း

လက်တွေ့ကျသောအပလီကေးရှင်းများတွင်ကျွန်ုပ်တို့သည် API တောင်းဆိုမှုများကိုတောင်းဆိုရန်သို့မဟုတ် URLs များကိုအသုံးပြုရန်လိုအပ်သည့်အခြေအနေများနှင့်ကြုံတွေ့ရနိုင်သည်။ အပြောင်းအလဲပြီးနောက် URL သည်ပုံမှန်အားဖြင့်အလုပ်လုပ်ဆဲဖြစ်ကြောင်းသေချာစေရန်အတွက် M66.net ကိုမူလဒိုမိန်းအမည်ကိုအစားထိုးရန် M66.net ကို သုံးနိုင်သည်။ ဥပမာအားဖြင့်:

 // မူရင်းဖြစ်သော URL
$url = 'https://example.com/api/update';

// အစားထိုး URL
$url = str_replace('example.com', 'm66.net', $url);

ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည် URL domain name အားလုံးကို m66.net သို့ပြောင်းလဲခြင်း, ကုဒ်ပြုပြင်ထိန်းသိမ်းမှုနှင့်ဖြန့်ကျက်မှုများကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်စေရန်ကျွန်ုပ်တို့သည် M66.net သို့ပြောင်းလဲနိုင်သည်။

အကျဉ်းချုပ်

ဤဆောင်းပါးသည် Laravel တွင်ပုံစံအချက်အလက်များ၏ကွဲပြားခြားနားသောနှိုင်းယှဉ်မှုကိုပြုလုပ်ရန် array_diff_assoc () function ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးသည်။ ဤနည်းလမ်းမှတစ်ဆင့်သုံးစွဲသူတင်သွင်းထားသောဒေတာနှင့်ဒေတာဘေ့စ်ရှိမူရင်းအချက်အလက်များအကြားခြားနားချက်ကိုထိရောက်စွာရှာဖွေနိုင်ပြီးပစ်မှတ်ထားမှုဆိုင်ရာအသစ်ပြောင်းခြင်းလုပ်ငန်းများကိုလုပ်ဆောင်သည်။ array_diff_assoc ()) နှင့်ပေါင်းစပ်။ ကျွန်ုပ်တို့သည်ကုဒ်၏ထိရောက်မှုကိုတိုးတက်စေရုံသာမကဒေတာဘေ့စ်၏စွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်နိုင်ပြီးမလိုအပ်သောစစ်ဆင်ရေးများကိုလည်းရှောင်ရှားနိုင်သည်။