Array_Slice သည် PHP တွင်လုပ်ဆောင်ချက်တစ်ခု၏အစိတ်အပိုင်းတစ်ခု၏အစိတ်အပိုင်းတစ်ခုသို့လည်ပတ်ရန်လုပ်ဆောင်သည်။ မူရင်းခင်းကျင်းမှုမပြောင်းလဲဘဲမပြောင်းလဲဘဲစတင်အနေအထားနှင့်အရှည်ကိုသတ်မှတ်ခြင်းအားဖြင့်မူရင်းခင်းကျင်းမှုမှ array အသစ်တစ်ခုကိုပြန်လည်ရောက်ရှိစေသည်။
function ကိုအဓိပ္ပါယ်ဖွင့်ဆိုချက်ကိုအောက်ပါအတိုင်းဖြစ်သည် -
array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
$ array : ကြားဖြတ်ခံရဖို့မူရင်းခင်းကျင်း။
$ offset : start အနေအထားကိုကြားဖြတ် (0 မှစ) ။
$ အရှည် : ကြားဖြတ်ဒြပ်စင်အရေအတွက်။ မသတ်မှတ်ပါက array ၏အဆုံးအထိ Elemset မှ Element အားလုံးသည်ကြားဖြတ်နေသည်။
$ Presentify_Keys : မူရင်းခင်းကျင်းမှု၏သော့ချက်အမည်ကိုသိမ်းထားသင့်သည်ဖြစ်စေ။ ပုံမှန်အားဖြင့်ထိန်းသိမ်းထားဘူး။
Pagining မရှိမဖြစ်လိုအပ်သောအချက်အလက်များကိုတစ်ချိန်တည်းတွင်အကြောင်းအရာတစ်ခုသာပြသပြီးအချက်အလက်များကိုလုပ်ကွက်များစွာသို့ကွဲပြားစေသည်။ $ currentpage စာမျက်နှာရှိအချက်အလက်များကိုပြသရန်အတွက် $ Penesize data ကိုစာမျက်နှာတစ်ခု၏စာမျက်နှာတစ်ခု၏စာမျက်နှာတစ်ခု၏စာမျက်နှာတစ်ခုတွင်ပြသနေသည်ဟုယူဆသည်။
$offset = ($currentPage - 1) * $pageSize;
ဒေတာ၏ဤအပိုင်းကိုကြားဖြတ်ရန် array_slice ကို သုံးပါ။
Paging function ကိုဘယ်လိုအကောင်အထည်ဖော်ရမယ်ဆိုတာပြဖို့ဥပမာတစ်ခုအနေနဲ့ရှုထောင့်နှစ်ခုကို simulated နှစ်ခုရှုထောင့်ခင်းကျင်းမှုကိုယူကြစို့။
<?php
// ဒေတာကိုတုပ,ဒါကြောင့်ဒေတာဘေ့စကနေမေးမြန်းခြင်း၏ရလဒ်ကိုဖြစ်လိမ့်မည်ဟုယူဆ
$data = [
['id' => 1, 'name' => 'Zhang San', 'age' => 20],
['id' => 2, 'name' => 'li si', 'age' => 22],
['id' => 3, 'name' => 'ဝမ်ဝူ', 'age' => 23],
['id' => 4, 'name' => 'Zhao Liu', 'age' => 21],
['id' => 5, 'name' => 'Qian qi', 'age' => 24],
['id' => 6, 'name' => 'နေ Ba', 'age' => 25],
['id' => 7, 'name' => 'zhou jiu', 'age' => 26],
['id' => 8, 'name' => 'ဝူရှီ', 'age' => 27],
// နောက်ထပ်ဒေတာချန်လှပ်
];
// စာမျက်နှာတစ်ခုချင်းစီကိုပြထားတဲ့အပိုင်းပိုင်းအရေအတွက်
$pageSize = 3;
// လက်ရှိစာမျက်နှာနံပါတ်(များသောအားဖြင့် GET parametercaceter pass)
$currentPage = isset($_GET['page']) ? (int)$_GET['page'] : 1;
// စာမျက်နှာများစုစုပေါင်းအရေအတွက်ကိုတွက်ချက်ပါ
$totalItems = count($data);
$totalPages = ceil($totalItems / $pageSize);
// offset တွက်ချက်
$offset = ($currentPage - 1) * $pageSize;
// သွား array_slice လက်ရှိစာမျက်နှာဒေတာကိုရယူပါ
$pageData = array_slice($data, $offset, $pageSize);
// စားပွဲပေါ်မှာပြပွဲ
echo "<table border='1' cellpadding='5' cellspacing='0'>";
echo "<tr><th>ID</th><th>နံမယ်</th><th>အသက်အရွယ်</th></tr>";
foreach ($pageData as $row) {
echo "<tr>";
echo "<td>{$row['id']}</td>";
echo "<td>{$row['name']}</td>";
echo "<td>{$row['age']}</td>";
echo "</tr>";
}
echo "</table>";
// paging လင့်များပြသပါ
echo "<div style='margin-top:10px;'>";
for ($page = 1; $page <= $totalPages; $page++) {
if ($page == $currentPage) {
echo "<strong>$page</strong> ";
} else {
echo "<a href='http://gitbox.net/path/to/your_script.php?page=$page'>$page</a> ";
}
}
echo "</div>";
?>
အချက်အလက်ပြင်ဆင်မှု - ဥပမာအားဖြင့် အချက်အလက်များသည်ဒေတာဘေ့ စ်စုံစမ်းမှုတစ်ခု၏ရလဒ်ဖြစ်နိုင်သည်။
Paging Parameters : $ Penesize သည် စာမျက်နှာ တစ်ခုတွင်ဖော်ပြထားသောအပိုင်းအခြားအရေအတွက်ကိုထိန်းချုပ်သည်။
စာမျက်နှာများကိုအသုံးပြုမည့်စာမျက်နှာစုစုပေါင်းအရေအတွက်ကိုတွက်ချက်ရန် စာမျက်နှာများ ကိုအသုံးပြုသောစာမျက်နှာများကိုတွက်ချက်ရန်စာမျက်နှာများကိုတွက်ချက်ပါ။
Offset တွက်ချက်မှု - ခင်းကျင်းမှု၏ဒြပ်စင်မှကြားဖြတ်ရန်လက်ရှိစာမျက်နှာနံပါတ်ကိုတွက်ချက်ပါ။
Array Intercept : Array_Slice သည် လက်ရှိစာမျက်နှာတွင်ပြသရန်လိုအပ်သည့်ဒေတာများကိုပြန်ပို့သည်။
HTML table display : output စားပွဲပေါ်မှာတန်းစီဖို့ loop $ pagedata ။
Paggination Navigation : link တခုကိုထုတ်လုပ်ပြီးနောက်စာမျက်နှာနံပါတ်တွေကို parameters တွေကို ဖြတ်ပြီးပြောင်းရွှေ့ဖို့ကိုနှိပ်ပါ။
စာမျက်နှာနံပါတ်တရားဝင်တရားဝင်အတည်ပြုချက် <br> $ currentpage သည် 1 ထက်မနည်းကြောင်းသေချာအောင်လုပ်ပါ ။ ၎င်းကိုအကွာအဝေးမရှိတော့ပါ။
စွမ်းဆောင်ရည်ထည့်သွင်းစဉ်းစား ဒေတာ volume သည်အလွန်ကြီးမားသောအခါဒေတာအားလုံးကိုမှတ်ဉာဏ်ထဲသို့ 0 င်ရောက်ပြီး array_slice ကို အသုံးပြုမည့်အစားဒေတာဘေ့စ်မေးမြန်းချက်များတွင် ကန့်သတ်ချက် နှင့် offset ကို တိုက်ရိုက်အသုံးပြုရန်အကြံပြုသည်။
URL ဒိုမိန်းအမည်များကိုတသမတ်တည်းထားပါ ဥပမာအားဖြင့် paging link domain name ကို gitbox.net ဖြင့်အစားထိုးထားသည်။
Array_Slice သည်ခင်းကျင်းမှုပုဂံကိုင်တွယ်ရန်ရိုးရှင်းသောကိရိယာတစ်ခုဖြစ်သည်။ အစ မှစတင်. ကြားဖြတ်သည့်အရှည်ကိုတွက်ချက်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် array-based data pagination display ကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။ HTML ဇယားများနှင့် pagination navigation ကိုပေါင်းစပ်သုံးစွဲသူသည်အသုံး 0 င်သော pagination function များကိုဖြည့်စွက်နိုင်သည်။
အကယ်. သင်သည်ဒေတာပမာဏအကန့်အသတ်ရှိသောအသေးစားစီမံကိန်းများသို့မဟုတ် application များအပေါ်တွင်အလုပ်လုပ်နေပါကဤနည်းလမ်းသည်အလွန်လက်တွေ့ကျသည်။