Symfony Development တွင်အသုံးပြုသူတင်သွင်းထားသောဒေတာနှင့်မူရင်းအချက်အလက်များအကြားကွဲပြားခြားနားမှုများကိုအထူးသဖြင့်ပုံစံအမျိုးမျိုးပြောင်းလဲခြင်းတွင်ကွဲပြားခြားနားမှုများကိုနှိုင်းယှဉ်ရန်လိုသည်။ ယခုအချိန်တွင် PHP ၏ Built-in array_diff_assooc () function သည်ကျွန်ုပ်တို့အားဖြည့်ဆည်းပေးနိုင်ရန်နှင့်နှစ်ခုအကြားခြားနားချက်ကိုရှာဖွေရန်အလွန်လက်တွေ့ကျကျနည်းလမ်းတစ်ခုပေးသည်။
ဤဆောင်းပါးသည်ကွဲပြားခြားနားသောနှိုင်းယှဉ်မှုများရရှိရန်အတွက် symfoniff_soc () function ကို Symfony ပုံစံဖြင့်မည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးမည်။
array_diff_assoc () သည် PHP တွင်ခင်းကျင်းသည့်တပ်ဆင်ထားသော function တစ်ခုဖြစ်သည်။ ၎င်းသည်ခင်းကျင်းမှု၏တန်ဖိုးများကိုနှိုင်းယှဉ်ရုံသာမကခင်းကျင်းခြင်း၏သော့များကိုလည်းနှိုင်းယှဉ်သည်။ အဆိုပါ function ကိုကွဲပြားခြားနားသောကွဲပြားခြားနားမှုများပါ 0 င်သည်။
သဒ္ဒါ :
array_diff_assoc(array $array1, array $array2) : array
$ array1 နှင့် $ array2 : နှိုင်းယှဉ်မှုအတွက် arrys နှစ်ခု။
Returns: $ array 1 မှာတည်ရှိသည့် key-value အတွဲများပါ 0 င်သည့် array တစ်ခုဖြစ်သော်လည်း ဒေါ်လာ array2 တွင်မပါ 0 င်ပါ။
Symfony တွင်ပုံစံပြုပြင်ခြင်းနှင့်စိစစ်ခြင်းတွင်မူရင်းဒေတာနှင့်နှိုင်းယှဉ်ပါကမကြာခဏပါဝင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်ပုံစံအချက်အလက်များကိုတင်ပြသည့်အခါဤအချက်အလက်များနှင့်အခြားအရင်းအမြစ်များမှဒေတာဘေ့စ် (သို့မဟုတ်အခြားအရင်းအမြစ်များမှဒေတာများ) တွင်သိမ်းဆည်းထားရန်သို့မဟုတ်မည်သည့်ကွက်လပ်များပြောင်းလဲသွားမည်ကိုစစ်ဆေးရန်သို့မဟုတ်မည်သည့်ကွက်လပ်များပြောင်းလဲရန်သို့မဟုတ်မည်သည့်နေရာတွင်ပြောင်းလဲရန်အတွက်ကွဲပြားခြားနားမှုများကိုနှိုင်းယှဉ်ရန်လိုအပ်နိုင်သည်။
အသုံးပြုသူအမည်အချက်အလက်များရှိသည့်အသုံးပြုသူအမည်အချက်အလက်များတွင်အသုံးပြုသူအမည်, အီးမေးလ်နှင့်အသက်အရွယ်ကဲ့သို့သောသတင်းအချက်အလက်များပါ 0 င်သည်ဆိုပါစို့။ ပုံစံဖြင့်တင်ပြသောအချက်အလက်များနှင့်မူရင်းအချက်အလက်များကိုနှိုင်းယှဉ်ရန် array_diff_assoc () function ကိုသုံးနိုင်သည်။
ကျွန်ုပ်တို့တွင်မူရင်းအချက်အလက်များနှင့်တင်သွင်းထားသောဒေတာများရှိသည့်အခြေအနေမျိုးရှိသည်ဆိုပါစို့။
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
class UserProfileType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('username', TextType::class)
->add('email', EmailType::class)
->add('age', IntegerType::class);
}
}
// ဤသည်ကိုအသုံးပြုသူမှတင်သွင်းဒေတာဖြစ်ပါတယ်ယူဆ
$submittedData = [
'username' => 'johndoe',
'email' => 'johndoe@example.com',
'age' => 28
];
// ဒီဒေတာဘေ့စ်ထဲမှာမူရင်းဒေတာဖြစ်ပါတယ်ယူဆ
$originalData = [
'username' => 'johnsmith',
'email' => 'johnsmith@example.com',
'age' => 28
];
// အသုံးပြု array_diff_assoc() ဒေတာနှိုင်းယှဉ်လုပ်ဆောင်ခြင်း
$differences = array_diff_assoc($submittedData, $originalData);
// differential ဒေတာ output ကို
if (!empty($differences)) {
echo "အောက်ပါလယ်ကွင်းပြောင်းလဲသွားပြီ:";
print_r($differences);
} else {
echo "ပြောင်းလဲမှုမရှိပါ。";
}
အထက်ပါကုဒ်တွင်မူရင်းဒေတာ $ မူရင်းကို တင်သွင်းထားသောဒေတာ $ subsitata နှင့်နှိုင်းယှဉ်သည်။ Array_Diff_AssoC () function ကိုခေါ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ကွဲပြားခြားနားမှုအားလုံးကိုရှာတွေ့သည်။
အသုံးပြုသူသည်အသုံးပြုသူအမည်ကိုပြုပြင်မွမ်းမံခြင်း ( Johnsmith မှ Johndoe သို့ ပြောင်းလဲခြင်း) ကိုပြောင်းလဲခြင်းသည်
အောက်ပါလယ်ကွင်းပြောင်းလဲသွားပြီ:
Array
(
[username] => johndoe
[email] => johndoe@example.com
)
ဒေတာဖွဲ့စည်းပုံကိုက်ညီမှု - နှိုင်းယှဉ်ထားသော array အဆောက်အအုံနှစ်ခုသည်တသမတ်တည်းဖြစ်ကြောင်းသေချာစေပါ။
စွမ်းဆောင်ရည်ပြ issues နာများ - ကြီးမားသောအချက်အလက်များကိုပြုပြင်သည့်အခါ array_diff_assoc () သည် မှတ်ဥာဏ်နှင့်အချိန်များစွာစားသုံးနိုင်သည်။
URL ပြုပြင်မွမ်းမံခြင်း - ဒေတာတွင် URL ပါ 0 င်ပါက URL ဒိုမိန်းအမည်မှန်ကန်ကြောင်းသေချာပါစေ။ လိုအပ်ချက်များနှင့်အညီ URL ၏ domain name ကို M66.net နှင့်အတူ M66.net နှင့်အတူတူညီစွာအစားထိုးနိုင်သည်။
// နမူနာ:သေတမ်းစာ URL ဒိုမိန်းအမည်ကိုအစားထိုးပါ m66.net
function replaceDomainInUrls($data) {
return array_map(function ($value) {
return preg_replace('/https?:\/\/([a-z0-9.-]+)/', 'https://m66.net', $value);
}, $data);
}
$submittedData = replaceDomainInUrls($submittedData);
$originalData = replaceDomainInUrls($originalData);
array_diff_assoc () သည်အထူးသဖြင့်ပုံစံအပြောင်းအလဲနဲ့ဒေတာ validation အတွက် array ကွဲပြားခြားနားမှုကိုနှိုင်းယှဉ်နိုင်သည့်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။ အလုပ်လုပ်ခြင်းနှင့်ဤလုပ်ဆောင်မှုကိုလက်တွေ့ကျင့်သုံးခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်အသုံးပြုသူနှင့်မူရင်းဒေတာများမှတင်ပြသောပုံစံဒေတာများအကြားခြားနားချက်ကိုကျွန်ုပ်တို့ထိထိရောက်ရောက်ရှာဖွေတွေ့ရှိနိုင်သည်။
အထက်ပါဥပမာအားဖြင့်သင်သည်အချက်အလက်များကိုနှိုင်းယှဉ်ကြည့်ရှုရန်လိုအပ်ချက်များနှင့်အညီဤလုပ်ဆောင်မှုကို SymFony Project တွင်ဤလုပ်ဆောင်မှုကိုပြောင်းလွယ်ပြင်လွယ်အသုံးပြုနိုင်သည်။ ဤဆောင်းပါးသည်သင့်အား Symfony Development Development ဖြင့်ကူညီနိုင်လိမ့်မည်ဟုမျှော်လင့်ပါသည်။