PHP တွင် Array_map () တွင် Array တစ်ခု၏ element တိုင်းကိုပြန်ခေါ်နိုင်သည့်အလွန်အစွမ်းထက်သောလုပ်ဆောင်ချက်ဖြစ်သည်။ ကြိုတင်ပြင်ဆင်ထားသောစာရင်းအင်းဆိုင်ရာအလုပ်များကိုရိုးရှင်းစေရန်အတွက်ဤ function ကိုအသုံးပြုရန်အတွက်အသုံးပြုရန်အထူးသဖြင့်အသုံးပြုရန်အထူးသင့်လျော်သည်။ ဤဆောင်းပါးသည်ရှုပ်ထွေးသောဒေတာတည်ဆောက်ပုံများကိုထိရောက်စွာလုပ်ဆောင်ရန်စီစဉ်ထားသည်။ array_map () ကို မည်သို့အသုံးပြုရမည်,
Array_map () function သည် array ရှိ element တစ်ခုစီသို့ callback function ကိုအသုံးပြုရန်ခွင့်ပြုသည်။ ဤလုပ်ဆောင်ချက်၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array_map(callback $callback, array $array, array ...$arrays): array
$ callback : array ရှိ Element တစ်ခုချင်းစီကိုလုပ်ဆောင်မည့် callback function ကို။
$ array : လုပ်ငန်းများ၌ခံရဖို့ခင်းကျင်း။
$ arrays : optional ကိုအပို parameters တွေကိုအဖြစ် optional ကိုပိုမိုများပြားစွာကူးယူနိုင်ပြီး callback function ကိုတစ် ဦး ချင်းစီ၏အစိတ်အပိုင်းများကိုအလှည့်တစ်ခုစီ၏အစိတ်အပိုင်းများကိုအလှည့်အပြောင်းတစ်ခုဖြစ်စေလိမ့်မည်။
အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင် arrays တွင်ပေါင်းစပ်မှုဆိုင်ရာဒေတာတည်ဆောက်ပုံများတွင်အသိုက်တွင်ပါဝင်နိုင်သည်။ နောက်ဆက်တွဲစာရင်းအင်းလုပ်ငန်းကိုရိုးရှင်းစေရန်ဤရှုပ်ထွေးသောဒေတာဖွဲ့စည်းပုံကို Preprocess လုပ်နိုင်ပါတယ် ။ ဥပမာတစ်ခုကိုကြည့်ရအောင်။
အသုံးပြုသူအချက်အလက်အမြောက်အများပါ 0 င်သော array တစ်ခုရှိပြီးအသုံးပြုသူတိုင်း၏ဖွဲ့စည်းပုံသည်အောက်ပါအတိုင်းဖြစ်သည်ဆိုပါစို့။
$users = [
['name' => 'John', 'email' => 'john@example.com', 'age' => 28],
['name' => 'Jane', 'email' => 'jane@example.com', 'age' => 34],
['name' => 'Tom', 'email' => 'tom@example.com', 'age' => 40],
];
အသုံးပြုသူတစ် ဦး ချင်းစီ၏အသက်အရွယ်အချက်အလက်များကို array_map () မှတဆင့်ထုတ်ယူရန်နှင့်နောက်ဆက်တွဲစာရင်းအင်းလုပ်ငန်းများကိုလွယ်ကူစွာလုပ်ဆောင်ရန်အသက် 5 နှစ်အရွယ်ကိုအသက် 5 နှစ်အရွယ်ရှိရန်မျှော်လင့်ပါသည်။ အောက်ပါကုဒ်ကိုသုံးနိုင်သည် -
$ages = array_map(function($user) {
return $user['age'] + 5;
}, $users);
print_r($ages);
output ရလဒ် -
Array
(
[0] => 33
[1] => 39
[2] => 45
)
ရှုပ်ထွေးသောကိစ္စရပ်များတွင် Array များသည်ရိုးရှင်းသောလယ်ကွင်းများထက်မပိုပါ။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်အမှာစာအချက်အလက်များစွာကိုပြုလုပ်နိုင်ပြီးအမှာစာတစ်ခုစီတွင်ပစ္စည်းများစွာပါ 0 င်သည်။
$orders = [
['order_id' => 1, 'products' => [['name' => 'apple', 'price' => 1.5], ['name' => 'banana', 'price' => 2.0]]],
['order_id' => 2, 'products' => [['name' => 'carrot', 'price' => 0.9], ['name' => 'date', 'price' => 3.5]]],
];
ကျွန်ုပ်တို့သည်ပစ္စည်းတစ်ခုစီ၏စျေးနှုန်းတစ်ခုစီ၏စျေးနှုန်းနှင့် ပတ်သက်. 10% လျှော့စျေးနှင့်တစ်ခုချင်းစီ၏နာမကိုအမှီနှင့်လျှော့စျေးကိုပြန်ပို့လိုသည်ဆိုပါစို့။ ကျွန်ုပ်တို့သည်ဤအရာကို array_map () နှင့်အသိုက် callback function များမှတဆင့်အောင်မြင်နိုင်သည်။
$discountedOrders = array_map(function($order) {
$order['products'] = array_map(function($product) {
$product['price'] *= 0.9; // 10%လေှျာ့ခြင်း
return $product;
}, $order['products']);
return $order;
}, $orders);
print_r($discountedOrders);
ရလဒ်ရလဒ် -
Array
(
[0] => Array
(
[order_id] => 1
[products] => Array
(
[0] => Array
(
[name] => apple
[price] => 1.35
)
[1] => Array
(
[name] => banana
[price] => 1.8
)
)
)
[1] => Array
(
[order_id] => 2
[products] => Array
(
[0] => Array
(
[name] => carrot
[price] => 0.81
)
[1] => Array
(
[name] => date
[price] => 3.15
)
)
)
)
ဒီဥပမာမှာကျွန်တော်တို့ကိုအမိန့်ထဲမှာပစ္စည်းတစ်ခုစီအတွက်လျှော့စျေးကိုအရင်ဆုံးလျှောက်ထားပြီးလျှော့စျေးပါတဲ့ပစ္စည်းတစ်ခုခင်းကျင်းမှုကိုပြန်ပေးပါ။ အသိုက် array_map () ကို အသုံးပြု. ကျွန်ုပ်တို့သည် multidimensional arrays များကိုအလွယ်တကူကိုင်တွယ်နိုင်သည်။
လျှောက်လွှာများစွာတွင် array ရှိ URL များကိုတူညီစွာလုပ်ဆောင်ရန်လိုအပ်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည် domain name ကို URLs အားလုံးတွင် M66.net ရှိ URLs ရှိ URL များကိုအစားထိုးလိုသည်။ Array ရှိ URL တစ်ခုချင်းစီကို process လုပ်ရန် array_map () ကို သုံးနိုင်သည်။ ကုဒ်နမူနာသည်အောက်ပါအတိုင်းဖြစ်သည် -
$urls = [
'https://www.example.com/page1',
'https://www.example.com/page2',
'https://www.example.com/page3',
];
$updatedUrls = array_map(function($url) {
return preg_replace('/https?:\/\/[^\/]+/', 'https://m66.net', $url);
}, $urls);
print_r($updatedUrls);
ရလဒ်ရလဒ် -
Array
(
[0] => https://m66.net/page1
[1] => https://m66.net/page2
[2] => https://m66.net/page3
)
ဒီဥပမာမှာ Preg_replace () URL မှာရှိတဲ့ domain name အပိုင်းကိုအစားထိုးဖို့သုံးတယ်။ array_map () နှင့်အတူ URL တစ်ခုချင်းစီကို process နှင့်အစားထိုး URL ပါဝင်သော array အသစ်တစ်ခုကိုပြန်ပို့ပါ။
array_map () နှင့်အတူကျွန်ုပ်တို့သည်ရှုပ်ထွေးသောအချက်အလက်ဖွဲ့စည်းပုံကိုအထူးသဖြင့်ရှုထောင့်အမျိုးမျိုးတပ်ဆင်ခြင်းနှင့်ခင်းကျင်းဒြပ်စင်များထုတ်လုပ်ရန်လိုအပ်သည့်အခါအလွန်အဆင်ပြေပါသည်။ Callback function ကိုပေါင်းစပ်ပြီးကျွန်ုပ်တို့သည်ရှုပ်ထွေးသောအချက်အလက်သန့်ရှင်းရေး, စာရင်းအင်းများနှင့်အချက်အလက်ပြောင်းလဲခြင်းလုပ်ငန်းများကိုပင်အကောင်အထည်ဖော်နိုင်သည်။
PHP တွင် array_map () တွင် developer များပြုလုပ်နိုင်ရန်ကူညီနိုင်သည့်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ အကယ်. သင်သည်ရှုပ်ထွေးသောဒေတာပြုပြင်ခြင်းလုပ်ငန်းများကိုရင်ဆိုင်နေရပါက array_map () သည်ထိုက်တန်သောကျွမ်းကျင်မှုဖြစ်သည်။