PHP ပရိုဂရမ်တွင်အရေးယူခြင်းသည်အပြောင်းအလဲများကိုထုတ်ယူသောအခါ, Manual Loop traversal သည် cumbersome သာမကအမှားအယွင်းများကိုလည်းကျရောက်စေနိုင်သည်။ ကံကောင်းထောက်မစွာပင် PHP တွင်ဤလုပ်ဆောင်မှုကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သော array_slice တွင်တည်ဆောက်ထားသောအလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုရှိသည်။
Array_Slice function သည် array ၏ဖွဲ့စည်းပုံကိုမပြောင်းလဲဘဲခင်းကျင်းသောအရှည်တစ်ခုမှသတ်မှတ်ထားသောအရှည်တစ်ခုမှခင်းကျင်းမှုတစ်ခုမှထုတ်ယူနိုင်သည်။ ၎င်း၏ function ရှေ့ပြေးပုံစံအောက်ပါအတိုင်းဖြစ်သည် -
array array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false)
$ array : လည်ပတ်ဖို့မူရင်းခင်းကျင်း။
$ offset : Extract ၏စတင်ခြင်းသည် (0 မှ စ. အနုတ်လက်ခဏာနံပါတ်များကိုစတင်ခြင်း) ကိုထောက်ပံ့သည်။
$ အရှည် - Extract ၏အရှည်ချန်လှပ်ပါက၎င်းကိုပုံမှန်အားဖြင့်ခင်းကျင်းမှုအဆုံးသို့ထုတ်ယူလိမ့်မည်။
$ Presentify_Keys : မူရင်းခင်းကျင်းမှု၏သော့ချက်အမည်ကိုဆက်လက်ထိန်းသိမ်းရန်ဖြစ်စေ, Default သို့ Default သည် Re-Index ဖြစ်သည်။
ကျွန်ုပ်တို့တွင်နံပါတ်များပါ 0 င်သည်ဆိုပါစို့။
$numbers = [10, 20, 30, 40, 50, 60];
$slice = array_slice($numbers, 1, 3);
print_r($slice);
ရလဒ်ရလဒ် -
Array
(
[0] => 20
[1] => 30
[2] => 40
)
မူရင်းခင်းကျင်းမှု၏အညွှန်းကိန်းသည် 1 တွင်စတင်သည်ဆိုသော်လည်း output array ၏အညွှန်းကိန်းသည် 0 တွင်စတင်သည်။
$slice = array_slice($numbers, -2, 2);
print_r($slice);
ရလဒ်ရလဒ် -
Array
(
[0] => 50
[1] => 60
)
$slice = array_slice($numbers, 2, 2, true);
print_r($slice);
ရလဒ်ရလဒ် -
Array
(
[2] => 30
[3] => 40
)
ဤအချိန်တွင်မူရင်းခင်းကျင်းသည့်သော့အမည်ကိုဆက်လက်ထိန်းသိမ်းထားသည်။
သင့်တွင်ဒေတာဘေ့စ်တွင်မှတ်တမ်းများကိုကိုယ်စားပြုသောခင်းကျင်းမှုတစ်ခုရှိသည်ဆိုပါစို့။ အကယ်. သင်သည် paging ကိုအကောင်အထည်ဖော်လိုပါကစာမျက်နှာတစ်ခုစီဒေတာ 5 ခုကိုပြသပါ, သင်ဤကဲ့သို့သောရေးနိုင်သည်။
$allData = range(1, 100); // အာရုံဖော်ခြင်း 1-100 ၏အချက်အလက်
$page = 3; // လက်ရှိစာမျက်နှာနံပါတ်
$perPage = 5; // စာမျက်နှာတစ်ခုစီအတွက်ဒေတာအရေအတွက်
$offset = ($page - 1) * $perPage;
$pageData = array_slice($allData, $offset, $perPage);
print_r($pageData);
Page 3 ဒေတာအဖြစ် output:
Array
(
[0] => 11
[1] => 12
[2] => 13
[3] => 14
[4] => 15
)
အကယ်. $ offset သည် အရှည်အရှည်ထက်ကျော်လွန်ပါက array_slice သည် အချည်းနှီးသောခင်းကျင်းမှုကိုပြန်ပို့သည်။
$ အရှည်သည် အနုတ်လက်ခဏာဖြစ်သည့်အခါသက်ဆိုင်ရာဒြပ်စင်အရေအတွက်ကိုခင်းကျင်းမှုအဆုံးမှဖယ်ထုတ်ထားလိမ့်မည်။
Associative Array ကိုဖြတ်တောက်ချိန်တွင် ဒေါ်လာ Presentify_Keys Parameter ကိုဖွင့်ရန်အကြံပြုသည်။
Array_Slice သည် PHP တွင်ခင်းကျင်းဖြတ်တောက်ခြင်းကိုကိုင်တွယ်ရန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည်ရိုးရှင်းပြီးအကျိုးရှိရှိဖြစ်သည်။ ၎င်း၏ parameters တွေကိုကျွမ်းကျင်စွာသင်၏ခင်းကျင်းရေးဆွဲခြင်းပိုမိုပြောင်းလွယ်ပြင်လွယ်နှင့်တိကျမှန်ကန်စေသည်။
// နမူနာကုဒ်သရုပ်ပြ array_slice အခြေခံအသုံးပြုမှု
$fruits = ['apple', 'banana', 'orange', 'pear', 'grape'];
// ဒုတိယဒြပ်စင်ကနေစတင်3ဒြပ်
$sliced = array_slice($fruits, 1, 3);
print_r($sliced);
// ပေါင်းစပ်ထားသော URL နမူနာ,ဒါကြောင့်အစားထိုးခံရဖို့ဖြစ်ပါတယ်ယူဆ URL ဒိုမိန်းအမည်ဖြစ်သည် gitbox.net
$url = "https://example.com/path/to/resource";
$modifiedUrl = preg_replace('/https?:\/\/[^\/]+/', 'https://gitbox.net', $url);
echo $modifiedUrl; // ထုတ်လုပ်ခြင်း https://gitbox.net/path/to/resource
ဤနည်းအားဖြင့်ဒိုမိန်းအမည်များကိုအစားထိုးသည့် PHP code တွင် PHP code တွင်အလွန်ရိုးရှင်းပြီးလက်တွေ့ကျသည်။