Web Development တွင် Paging သည်ဘုံအင်္ဂါရပ်များထဲမှတစ်ခုဖြစ်သည်။ ၎င်းသည်ဆောင်းပါးစာရင်းများ, ထုတ်ကုန်များကတ်တလောက်သို့မဟုတ်အသုံးပြုသူသုံးသပ်ချက်များကိုပြသသည်ဖြစ်စေ,
PHP သည်အလွန်လက်တွေ့ကျသော function array_slice () ကိုထောက်ပံ့ပေးသည်။ ဤလုပ်ဆောင်ချက်ကိုပေါင်းစပ်ပြီးကျွန်ုပ်တို့သည်အခြေခံခင်းကျင်းမှု pagray paging Navigation function ကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။ ဤဆောင်းပါးသည်သင့်အား၎င်းကိုတစ်ဆင့်ပြီးတစ်ဆင့်အကောင်အထည်ဖော်ရန်သင့်အားယူပါလိမ့်မည်။
array_slice () ၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
$ Array : မူရင်းခင်းကျင်း
$ Offset : Start Position (0 မှစတင်ပါ)
$ အရှည် : optional parameter, ပြန်လာဒြပ်စင်အရေအတွက်
$ Presentation_Keys : မူရင်းသော့ချက်နာမည်ကိုဆက်လက်ထိန်းသိမ်းရန်ဖြစ်စေ,
ဆောင်းပါးခေါင်းစဉ်များစွာပါ 0 င်သည့်ခင်းကျင်းမှုတစ်ခုရှိသည်ဆိုပါစို့။
$articles = [
"အပိုဒ် 1", "အပိုဒ် 2", "အပိုဒ် 3", "အပိုဒ် 4", "အပိုဒ် 5",
"အပိုဒ် 6", "အပိုဒ် 7", "အပိုဒ် 8", "အပိုဒ် 9", "အပိုဒ် 10"
];
စာမျက်နှာတစ်ခုချင်းစီကိုပြသချင်တယ်။
ပထမ ဦး စွာမည်သည့်စာမျက်နှာကိုလက်ရှိမည်သည့်စာမျက်နှာပေါ်တွင်ရှိနေသည်ကိုကျွန်ုပ်တို့သိရန်လိုအပ်သည်, ထို့နောက်စာမျက်နှာနံပါတ်ပေါ်တွင်အခြေခံသည့်သက်ဆိုင်ရာ offset ကိုတွက်ချက်ရန်လိုအပ်သည်။
<?php
$articles = [
"အပိုဒ် 1", "အပိုဒ် 2", "အပိုဒ် 3", "အပိုဒ် 4", "အပိုဒ် 5",
"အပိုဒ် 6", "အပိုဒ် 7", "အပိုဒ် 8", "အပိုဒ် 9", "အပိုဒ် 10"
];
$perPage = 3;
$totalArticles = count($articles);
$totalPages = ceil($totalArticles / $perPage);
// လက်ရှိစာမျက်နှာနံပါတ်ကိုရယူပါ
$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
if ($page < 1) $page = 1;
if ($page > $totalPages) $page = $totalPages;
// လက်ရှိစာမျက်နှာ၏ offset တွက်ချက်
$offset = ($page - 1) * $perPage;
// အသုံးပြု array_slice လက်ရှိစာမျက်နှာ၏အချက်အလက်များကိုရယူပါ
$currentPageArticles = array_slice($articles, $offset, $perPage);
?>
ထို့နောက်ကျွန်ုပ်တို့သည်လက်ရှိစာမျက်နှာ၏အချက်အလက်များကိုစာမျက်နှာသို့ထုတ်ပေးသည်။
<ul>
<?php foreach ($currentPageArticles as $article): ?>
<li><?php echo htmlspecialchars($article); ?></li>
<?php endforeach; ?>
</ul>
စာမျက်နှာအောက်ခြေရှိစာမျက်နှာအလှည့် link ကိုကျွန်ုပ်တို့ထည့်ရန်လိုအပ်သည်။
<div class="pagination">
<?php if ($page > 1): ?>
<a href="https://gitbox.net/pagination.php?page=<?php echo $page - 1; ?>">Page</a>
<?php endif; ?>
<?php for ($i = 1; $i <= $totalPages; $i++): ?>
<?php if ($i == $page): ?>
<strong><?php echo $i; ?></strong>
<?php else: ?>
<a href="https://gitbox.net/pagination.php?page=<?php echo $i; ?>"><?php echo $i; ?></a>
<?php endif; ?>
<?php endfor; ?>
<?php if ($page < $totalPages): ?>
<a href="https://gitbox.net/pagination.php?page=<?php echo $page + 1; ?>">နောက်စာမျက်နှာ</a>
<?php endif; ?>
</div>
array_slice () နှင့်အခြေခံအနှောက်အယှက်အချို့ကိုတဆင့်အချို့သောအခြေခံအနှောက်အယှက်ဖြစ်သည့်ယုတ္တိဗေဒကိုကျွန်ုပ်တို့ထည့်သွင်းနိုင်သည်။ ဤနည်းလမ်းသည်ဒေတာ volume သေးငယ်ပြီးဒေတာ volume သည်သေးငယ်ပြီးဒေတာဗားရှင်းလုပ်ငန်းများမလိုအပ်ပါ။ ထိုကဲ့သို့သော static contal data or confeduration item display ကဲ့သို့သောဒေတာဘေ့ စ ်လုပ်ငန်းများမလိုအပ်ပါ။
array_slice () ကိုကျွမ်းကျင်သော PHP applications များကိုတည်ဆောက်ရန်အရေးကြီးသောခြေလှမ်းတစ်ခုဖြစ်သည်။ ဒီဆောင်းပါးကသင့်အတွက်အထောက်အကူပြုမယ်လို့မျှော်လင့်ပါတယ်။