လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Paglo Query တွင် SQL query ကိုရလဒ်များပြုလုပ်ရန် array_chunk ကိုသုံးပါ

Paglo Query တွင် SQL query ကိုရလဒ်များပြုလုပ်ရန် array_chunk ကိုသုံးပါ

M66 2025-04-28

Database Pagination Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qu Qoinging ပြုလုပ်ခြင်းသည်များသောအားဖြင့်ကျွန်ုပ်တို့သည်များစွာသောအချက်အလက်များကိုပြသရန်လိုအပ်သည့်အခြေအနေများကြုံတွေ့ရလေ့ရှိသည်။ ဒေတာအားလုံးကိုတစ်ပြိုင်နက်တည်းဖွင့်ပါကစာမျက်နှာကိုဖြည်းဖြည်းသို့မဟုတ်အချိန်အကြွင်းတင်ရန်စာမျက်နှာကိုဖြစ်ပေါ်စေနိုင်သည်။ ဤပြ problem နာကိုဖြေရှင်းရန် Pagl of Technology ကိုအသုတ်တွင်တင်ရန် PHP ၏ Array_chunk function သည်အလွန်ထိရောက်သောကိရိယာတစ်ခုဖြစ်သည်။

ဤဆောင်းပါးသည် PHP ၏ Array_chunk function ကို အသုံးပြု. PHP ၏ Array_chunk function ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးမည်။

1 ။ array_chunk function ကိုမိတ်ဆက်

Array_chunk သည် PHP တွင် built-in function တစ်ခုဖြစ်ပြီးကြီးမားသောသေးငယ်သော arrays များစွာသို့ခင်းကျင်းရန်အသုံးပြုသည်။ အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -

 array_chunk(array $array, int $length, bool $preserve_keys = false): array
  • $ array : ခွဲခြားခံရဖို့ခင်းကျင်း။

  • $ အရှည် : သေးငယ်တဲ့ array တစ်ခုစီ၏အရှည်။

  • $ Present_Keys : မူရင်းခင်း ကျင်း မှု၏သော့အမည်ကိုထိန်းသိမ်းရန်ဖြစ်စေ,

ဤလုပ်ဆောင်မှုမှတစ်ဆင့်ကျွန်ုပ်တို့သည်ဒေတာများစွာကိုစာမျက်နှာတစ်ခုစီ၏ Arrays များသို့ထည့်သွင်းထားသည့်ကြီးမားသောဒေတာများကိုခွဲဝေနိုင်သည်။

2 ။ Pagination query အတွက်လိုအပ်ချက်များ

ကျွန်ုပ်တို့တွင်အသုံးပြုသူအချက်အလက်အမြောက်အများပါ 0 င်သောဒေတာဘေ့စ်တွင်အသုံးပြုသူဇယား ( အသုံးပြုသူများ ) ရှိသည်ဆိုပါစို့။ ဤအချက်အလက်များကိုစာမျက်နှာပေါ်တွင်ပြသချင်ပါသည်။ ပုံမှန်အလေ့အကျင့်သည်ဒေတာဘေ့စ်မှမှတ်တမ်းအားလုံးကိုတစ်ပြိုင်နက်တည်းမေးမြန်းပြီး backend ပေါ်တွင် paging logic ကိုလုပ်ဆောင်ရန်ဖြစ်သည်။ သို့သော်ထိုသို့ပြုလုပ်ခြင်းသည်စွမ်းဆောင်ရည်ပြ problems နာများကိုဖြစ်ပေါ်စေနိုင်သည်, အထူးသဖြင့်ဒေတာ volume အလွန်ကြီးမားသည့်အခါ။

ထို့ကြောင့်ကျွန်ုပ်တို့သည် query ကိုဝေငှရန် array_chunk function ကိုသုံးနိုင်သည်။ SQL query ကို SQL query ကို array_chunk မှတဆင့် arrays များသို့ခွဲဝေယူပြီးဒေတာကိုစာမျက်နှာမှဖော်ပြပါ။

3 ။ Pagination function ကိုအကောင်အထည်ဖော်ရန် array_chunk ကို သုံးပါ

ဤတွင် SQL query ရလဒ်များကိုဖွင့်ရန် array_chunk function ကိုမည်သို့အသုံးပြုရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုရှိသည်။

 <?php

// ဒေတာဘေ့စ်ကိုဆက်သွယ်ပါ
$mysqli = new mysqli("localhost", "username", "password", "database");

// ဆက်သွယ်မှုကိုစစ်ဆေးပါ
if ($mysqli->connect_error) {
    die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}

// စာမျက်နှာတစ်ခုချင်းစီကိုပြသထားသည့်မှတ်တမ်းအရေအတွက်ကိုသတ်မှတ်ပါ
$items_per_page = 10;

// လက်ရှိစာမျက်နှာနံပါတ်ကိုရယူပါ,ပုံမှန်ဖြစ်ပါတယ် 1
$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$offset = ($page - 1) * $items_per_page;

// ဒေတာရှာဖွေမှုဒေတာ
$query = "SELECT * FROM users LIMIT $offset, $items_per_page";
$result = $mysqli->query($query);

// အဆိုပါ query ကိုအောင်မြင်သောလျှင်
if ($result->num_rows > 0) {
    // စုံစမ်းမှုသိမ်းဆည်းရန်ရလဒ်များကို array သို့ရောက်ရှိ
    $data = [];
    while ($row = $result->fetch_assoc()) {
        $data[] = $row;
    }

    // အသုံးပြု array_chunk တစ် ဦး လျှင်ဒေတာပမာဏအားဖြင့် query ရလဒ်များကိုခွဲထုတ်ပါ
    $chunks = array_chunk($data, $items_per_page);

    // လက်ရှိစာမျက်နှာ၏ဒေတာ display ကိုရယူပါ
    $current_page_data = $chunks[$page - 1];

    // လက်ရှိစာမျက်နှာ၏အချက်အလက်များကိုပြပါ
    foreach ($current_page_data as $user) {
        echo "အသုံးပြုသူ: " . $user['username'] . "<br>";
        echo "စာပို့: " . $user['email'] . "<br>";
        echo "<hr>";
    }
} else {
    echo "အသုံးပြုသူအချက်အလက်မရှိပါ。";
}

// Pagination link
$total_pages = ceil(count($data) / $items_per_page);
echo "<div>အများအပြားရှိတတ်သော " . $total_pages . " စာမျက်နှာ</div>";

for ($i = 1; $i <= $total_pages; $i++) {
    echo "<a href='?page=$i'>1 ။ $i စာမျက်နှာ</a> ";
}

$mysqli->close();
?>

4 ။ ဒေတာမျက်နှာပြင်ကိုပိုကောင်းအောင်လုပ်ပါ

array_chunk ကို အသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် query ရလဒ်များကိုစာမျက်နှာမှ ဖြတ်. လက်ရှိစာမျက်နှာ၏အချက်အလက်များကိုသာပြသနိုင်သည်။ ၎င်းသည်အချက်အလက်အမြောက်အများကိုပြုပြင်ရန်အလွန်အသုံးဝင်သည်။ စာမျက်နှာတစ်ခုစီတွင်ဝန်ထုပ်ဝန်ပိုးကိုထိရောက်စွာလျှော့ချနိုင်သည်။

ထို့အပြင်ကျွန်ုပ်တို့သည် Paging function ကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်နိုင်သည်။ ဥပမာအားဖြင့်, ဒေတာများကိုစာမျက်နှာတိုင်းကိုလန်းဆန်းစေမည့်အစား Ajax မှတဆင့် dynamically load လုပ်ထားနိုင်သည်။ ဤနည်းအားဖြင့်အသုံးပြုသူအတွေ့အကြုံသည်ချောချောမွေ့မွေ့ဖြစ်လိမ့်မည်။

5 ။ URL Parameter Optimization

Pagination တွင် Page Page Parameter သည်လက်ရှိစာမျက်နှာနံပါတ်ကိုညွှန်ပြရန် URL တွင်ပုံမှန်အားဖြင့် passeter ဖြစ်သည်။ အကယ်. ကျွန်ုပ်တို့၏အနေဖြင့် URL ဖွဲ့စည်းပုံကိုအောက်ပါအတိုင်းအသုံးပြုသည်ဆိုပါက -

 http://example.com/users?page=2

URL ၏ domain အပိုင်းကို M66.net နှင့်အစားထိုးနိုင်သည်။