0 က်ဘ်ဆိုက်တစ်ခုသို့မဟုတ်လျှောက်လွှာတစ်ခုကိုရေးဆွဲသည့်အခါ paging function သည်အလွန်အသုံးများသောလိုအပ်ချက်ဖြစ်သည်။ အချက်အလက်အမြောက်အများကိုကျွန်ုပ်တို့ပြသရန်လိုအပ်သည့်အခါအချက်အလက်အားလုံးကိုစာမျက်နှာသို့တိုက်ရိုက်တင်ရန်အသုံးပြုသူအတွေ့အကြုံကိုအကျိုးသက်ရောက်စေရုံသာမကဆာဗာဖိအားကိုလည်းဖြစ်စေနိုင်သည်။ ထို့ကြောင့်အနေဖြင့်ဤပြ problem နာကိုဖြေရှင်းရန်ထိရောက်သောနည်းလမ်းဖြစ်သည်။ PHP သည် array_chunk function သည်အလွန်ရိုးရှင်းပြီးထိရောက်သောနည်းတစ်နည်းသည်အလွန်ရိုးရှင်းသောနှင့်ထိရောက်သောနည်းလမ်းဖြစ်သည်။
Array_Crakunk function ကို array တစ်ခုစီကိုသေးငယ်တဲ့ arrays တွေအဖြစ်ခွဲထားဖို့အသုံးပြုသည်။ တစ်ခုချင်းစီကိုခင်းကျင်းမှုတစ်ခုစီ၏အရွယ်အစားကိုသတ်မှတ်နိုင်သည်။ စာမျက်နှာမှအချက်အလက်များကိုဖြည့်ဆည်းရန်ကျွန်ုပ်တို့ကိုကူညီရန် Paging function ကိုအကောင်အထည်ဖော်ရန် array_chunk ကို သုံးနိုင်သည်။
array_chunk(array $array, int $size, bool $preserve_keys = false): array
$ array : ဖြတ်ခံရဖို့မူရင်းခင်းကျင်း။
$ အရွယ်အစား - Subarray တစ်ခုစီ၏အရွယ်အစား, ၎င်းသည်စာမျက်နှာတစ်ခု၏ပမာဏကိုဖော်ပြထားသည်။
$ Present_Keys : မူရင်းခင်းကျင်းမှု၏အဓိကတန်ဖိုးကိုဆက်လက်ထိန်းသိမ်းရန် ပျက်ကွက်သည် ဖြစ်စေ, ပုံမှန်အားဖြင့်ပြန်လည်ညွှန်းကိန်းဖြစ်လိမ့်မည်။
ကျွန်ုပ်တို့တွင်အချက်အလက်အမြောက်အများပါ 0 င်သည့်အချက်အလက်အမြောက်အများပါ 0 င်ပြီးဖြစ်သည်ဆိုပါစို့။
$users = [
['id' => 1, 'name' => 'John Doe'],
['id' => 2, 'name' => 'Jane Smith'],
['id' => 3, 'name' => 'Emily Johnson'],
['id' => 4, 'name' => 'Michael Brown'],
// နောက်ထပ်အချက်အလက်များ...
];
Paging function ကိုအကောင်အထည်ဖော်ရန်ကျွန်ုပ်တို့သည်အချက်အလက်များကိုစာမျက်နှာမျိုးစုံသို့ခုတ်လှဲရန် array_chunk ကို သုံးနိုင်သည်။ ဥပမာအားဖြင့်စာမျက်နှာတစ်ခု၏ 2 ခုကိုဖော်ပြထားသည်။
$page_size = 2; // စာမျက်နှာတစ်ခုချင်းစီကိုပြသ2အချက်များ
$chunks = array_chunk($users, $page_size); // မျိုးစုံသေးငယ်တဲ့ arrays သို့ဖြတ်
ဤအချိန်တွင် $ chunks array တွင်သေးငယ်သော array များပါ 0 င်မည်။
// $chunks ရလဒ်
[
[
['id' => 1, 'name' => 'John Doe'],
['id' => 2, 'name' => 'Jane Smith']
],
[
['id' => 3, 'name' => 'Emily Johnson'],
['id' => 4, 'name' => 'Michael Brown']
],
// နောက်ထပ်စာမျက်နှာများ...
]
အသုံးပြုသူတောင်းဆိုချက်အရကျွန်ုပ်တို့သည်စာမျက်နှာတစ်ခု၏အချက်အလက်များကိုပြသရန်လိုအပ်သည်ဆိုပါစို့။ များသောအားဖြင့်ကျွန်ုပ်တို့သည်လက်ရှိစာမျက်နှာများကို URL Parameter မှတစ်ဆင့်ဖြတ်သန်းသွားမည်။
$current_page = isset($_GET['page']) ? (int)$_GET['page'] : 1; // လက်ရှိစာမျက်နှာရေတွက်ရယူပါ,ပုံမှန်ဖြစ်ပါတယ်1စာမျက်နှာ
ထို့နောက်ကျွန်ုပ်တို့သည်လက်ရှိစာမျက်နှာများအပေါ် အခြေခံ. အချက်အလက်များ၏အစအနေအထားကိုတွက်ချက်ပြီးနောက်သက်ဆိုင်ရာအချက်အလက်များကိုထုတ်ယူပါ။
$total_pages = count($chunks); // 总စာမျက်နှာ数
if ($current_page > $total_pages) {
$current_page = $total_pages; // 防止访问不存在的စာမျက်နှာ码
}
$current_chunk = $chunks[$current_page - 1]; // 获取当前စာမျက်နှာ的数据
ယခုကျွန်ုပ်တို့သည်စာမျက်နှာပေါ်ရှိလက်ရှိစာမျက်နှာ၏အချက်အလက်များကိုပြသနိုင်ပြီး paging navigation ကိုထုတ်လုပ်နိုင်သည်။
echo "当前စာမျက်နှာ数据:";
foreach ($current_chunk as $user) {
echo $user['name'] . "<br>";
}
// 显示分စာမျက်နှာ链接
echo "<br>分စာမျက်နှာ:";
for ($i = 1; $i <= $total_pages; $i++) {
echo "<a href='?page=$i'>$i</a> ";
}
အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျွန်ုပ်တို့သည်အစ်မအနေဖြင့်အယုံအကြည်ကင်းမဲ့သောလင့်များကိုဖြစ်ပေါ်စေသည်။ ဤဥပမာတွင်ကျွန်ုပ်တို့သည် M66.net ကို domain name အဖြစ်အသုံးပြုနိုင်ပြီး URL ကို M66.net Domain Name သို့ပြောင်းပါ။
echo "<br>分စာမျက်နှာ:";
for ($i = 1; $i <= $total_pages; $i++) {
echo "<a href='https://m66.net?page=$i'>$i</a> ";
}
ဤနည်းအားဖြင့်မည်သည့်စာမျက်နှာမည်မျှပင်ရှိပါစေ, paging link ကိုနှိပ်ခြင်း M66.net ဒိုမိန်းအမည်အောက်ရှိသက်ဆိုင်ရာစာမျက်နှာသို့ခုန်ချလိမ့်မည်။
အထက်ဖော်ပြပါအချက်သည် array_chunk ကို အသုံးပြု. paging အကောင်အထည်ဖော်ရန်အခြေခံနည်းလမ်းဖြစ်သည်။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်အချက်အလက်အမြောက်အများကိုသေးငယ်သောအပိုင်းအစများအဖြစ်ထိရောက်စွာခံစားနိုင်ပြီးစာမျက်နှာ Loading Speed နှင့် User အတွေ့အကြုံကိုတိုးတက်စေနိုင်သည်။ တစ်ချိန်တည်းမှာပင် URLs များမှတဆင့် paging link များကိုလည်းဒေသက္ကာများထုတ်လွှင့်ပြီးအသုံးပြုသူများကိုမတူညီသော data pages များကိုအလွယ်တကူရှာဖွေရန်ခွင့်ပြုသည်။
ဤဆောင်းပါးသည်အချက်အလက်များကိုဖြတ်တောက်ရန် Paging function တွင် Array_chunk ကို မည်သို့အသုံးပြုရမည်ကိုနားလည်ရန်မျှော်လင့်ပါသည်။ သင့်တွင်အခြားမေးခွန်းများရှိပါကအခမဲ့မေးမြန်းပါ။