MySQL ဒေတာဘေ့စ်ကိုအသုံးပြုသောအခါ PHP သည်ဒေတာဘေ့စ်နှင့်အပြန်အလှန်ဆက်သွယ်ရန် MySQLI extension ကိုထောက်ပံ့ပေးသည်။ ဘုံစစ်ဆင်ရေးသည် mySQLI_QUERY () ကို အသုံးပြုရန်နှင့်ရလဒ်များကိုရရှိရန်အတွက်ဖြစ်သည်။ ပုံမှန်အားဖြင့်ရလဒ်တစ်ခုစုံစမ်းမှုအစုကို MySQLI_RESULT OFF မှတစ်ဆင့်ဝင်ရောက်ကြည့်ရှုနိုင်သည်။ ရလဒ်အပြောင်းအလဲများကိုပြုလုပ်သောအခါဒေတာအမျိုးအစားအမှားများကိုရှောင်ရှားရန်နံပါတ်များ, ကြိုးများ, နေ့စွဲများစသဖြင့်ကွဲပြားသောအချက်အလက်အမျိုးအစားများကိုသင်ကြုံတွေ့ရနိုင်သည်။
ဤဆောင်းပါးသည် MySQLI_RESURRESURD လုပ်ငန်းတစ်ခုစီကိုမျှော်လင့်ထားသည့်ဒေတာအမျိုးအစားတစ်ခုစီကိုသတ်မှတ်ရန်အတွက် MySQLI_RESURT လုပ်ငန်းဆောင်ရွက်မှုကိုမည်သို့ထည့်သွင်းရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။
ပထမ ဦး စွာ SQL Query များကို execute လုပ်ရန်နှင့် MySQLI_RESult Oblit ကိုရယူရန် MySQLI_QUEERY () function ကိုမည်သို့အသုံးပြုရမည်ကိုသုံးသပ်ကြည့်ကြစို့။
<?php
// ဒေတာဘေ့စ် connection တစ်ခုဖန်တီးပါ
$mysqli = new mysqli('localhost', 'username', 'password', 'database_name');
// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($mysqli->connect_error) {
die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
// တစ် ဦး စုံစမ်းမှု execute နှင့်ရလဒ် set ကိုရယူပါ
$query = "SELECT id, name, price, created_at FROM products";
$result = $mysqli->query($query);
// စုံစမ်းမှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($result) {
// လုပ်ငန်းစဉ်မေးမြန်းချက်ရလဒ်များ
while ($row = $result->fetch_assoc()) {
// ဒေတာတစ်ခုချင်းစီကိုအတန်းတိုင်းလုပ်ငန်းစဉ်
}
} else {
echo "စုံစမ်းမှုမအောင်မြင်ပါ: " . $mysqli->error;
}
// ဆက်သွယ်မှုကိုပိတ်ပါ
$mysqli->close();
?>
ဤဥပမာတွင် MySQLI_QUERY () function မှတဆင့် SQL ၏မေးမြန်းချက်တစ်ခုနှင့် mySQLI_RESult အရာဝတ်ထုကိုပြန်သွားပါ။ ထို့နောက်ကျွန်ုပ်တို့သည်အရာဝတ်ထုတွင်လုပ်ကိုင်ပြီးအချက်အလက်များကိုဖတ်ပါလိမ့်မည်။
MySQLi_Result ၏ function () mysqli_result function သည်အချက်အလက်များကိုပုံမှန်အားဖြင့် string တစ်ခုအဖြစ်ပြန်လည်ပြုပြင်ခြင်းကိုပုံမှန်အားဖြင့်ပြန်လည်လုပ်ဆောင်သည်။ ဤအချက်သည်အချက်အလက်များသည်မျှော်လင့်ထားသည့်အမျိုးအစားများနှင့်ကိုက်ညီစေရန်သေချာစေရန်သေချာစေရန်ပြောင်းလဲခြင်းရလဒ်များပြုပြင်ပြောင်းလဲရေးရလဒ်များကိုပြုလုပ်သောအခါအမျိုးအစားချမှတ်ခြင်းကိုကိုယ်တိုင်ပြုလုပ်ရန်လိုအပ်သည်။
အကယ်. ကွက်လပ်တစ်ခုသည်ကိန်းဂဏန်းတစ်ခု၏တစ်ခုဖြစ်ပါက၎င်းကို (Int) Casting မှကိန်းတစ်ခုသို့ပြောင်းလဲနိုင်သည်။
<?php
while ($row = $result->fetch_assoc()) {
$id = (int) $row['id']; // integer မှသွန်း
echo "Product ID: " . $id . "<br>";
}
?>
အကယ်. ကွင်းတစ်ခုသည် floating ဂဏန်းအမျိုးအစားတစ်ခုဖြစ်ပါက၎င်းကို float အမျိုးအစားတစ်ခုသို့ (float) သို့မဟုတ် (နှစ်ဆ) သွန်းလောင်းနိုင်သည်။
<?php
while ($row = $result->fetch_assoc()) {
$price = (float) $row['price']; // floating နံပါတ်သို့သွန်း
echo "Product Price: " . $price . "<br>";
}
?>
Boolean Fields အတွက်ကျွန်ုပ်တို့သည်၎င်းကို မှန်ကန်သော သို့မဟုတ် မှားယွင်းသော ဘာသာပြောင်းနိုင်သည်။
<?php
while ($row = $result->fetch_assoc()) {
$is_active = (bool) $row['is_active']; // Boolean အမျိုးအစားမှသွန်း
echo "Product Active: " . ($is_active ? 'Yes' : 'No') . "<br>";
}
?>
Field တစ်ခုသည်ရက်စွဲတစ်ခုဖြစ်ပါက၎င်းအား Datetime :: CreateFremformat () Method ကို သုံး. datetime ::) ကို timestamp သို့ပြောင်းလဲရန်သို့မဟုတ်တိုက်ရိုက် သုံး. date ကိုသုံးနိုင်သည်။
<?php
while ($row = $result->fetch_assoc()) {
$created_at = strtotime($row['created_at']); // Timestamp သို့ကူးပြောင်း
echo "Created At: " . date('Y-m-d H:i:s', $created_at) . "<br>";
}
?>
သင့်တွင်စာရိုက်ရန်လိုအပ်သောအကွက်များစွာရှိပါကသင်သည်စိတ်ကြိုက်လုပ်ဆောင်ချက်နှင့်အသုတ်လုပ်ငန်းအမျိုးအစားကို oncapsulate လုပ်နိုင်သည်။ ၎င်းသည် Code ၏ထိန်းသိမ်းမှုနှင့်ပြန်လည်သုံးသပ်ခြင်းကိုတိုးတက်စေနိုင်သည်။
<?php
function convert_types($row) {
$row['id'] = (int) $row['id'];
$row['price'] = (float) $row['price'];
$row['is_active'] = (bool) $row['is_active'];
$row['created_at'] = strtotime($row['created_at']); // Timestamp သို့ကူးပြောင်း
return $row;
}
while ($row = $result->fetch_assoc()) {
$row = convert_types($row);
echo "Product ID: " . $row['id'] . "<br>";
echo "Product Price: " . $row['price'] . "<br>";
echo "Product Active: " . ($row['is_active'] ? 'Yes' : 'No') . "<br>";
echo "Created At: " . date('Y-m-d H:i:s', $row['created_at']) . "<br>";
}
?>
ဤဥပမာတွင် ပြောင်းလဲခြင်း () function သည်အတန်းတစ်ခုစီ၏အချက်အလက်များကိုမျှော်လင့်ထားသည့်အမျိုးအစားတစ်ခုသို့ပြောင်းလဲပေးသည်။
MySQLI_RESELL ရလဒ်အနေဖြင့်အမျိုးအစားသရဲရေးစနစ်ကိုထည့်သွင်းခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ဒေတာအမျိုးအစားကိုပိုမိုထိန်းချုပ်နိုင်ပြီးအမျိုးအစားမတိုက်ဆိုင်မှုကြောင့်အမှားအယွင်းများကိုရှောင်ရှားနိုင်သည်။ ဒေတာများကိုကိန်းဂဏန်းများ, booleans သို့မဟုတ် date there များသို့ပြောင်းလဲခြင်းသည်ဒေတာများ, ပြောင်းလဲခြင်းလုပ်ဆောင်ချက်များကို encapsulating ဖြင့် code ကိုပိုမိုအကောက်အသင်းများနှင့်ထိန်းသိမ်းနိုင်သည်။
MySQL query query ရလဒ်များကိုထုတ်ယူသောအခါဤဆောင်းပါးသည်သင့်အတွက်အထောက်အကူဖြစ်လိမ့်မည်ဟုမျှော်လင့်ပါ။