PHP တွင်ဒေတာဘေ့စ်လုပ်ငန်းများလုပ်ကိုင်ရန်ကျွန်ုပ်တို့အသုံးပြုသောအခါကျွန်ုပ်တို့သည် MySQLI_Query () ကို အသုံးပြု. ရှာဖွေမှုကိုလုပ်ဆောင်ရန်နှင့်ရလဒ်ရရှိရန် MySQLI_RESULT အရာဝတ်ထုကိုအသုံးပြုသည်။ အကယ်. သင် query ကိုအရာဝတ်ထုများသို့တိုက်ရိုက်ပြောင်းလဲလိုပါက MySQLI_RESULT :: FETL_BOBJECTS () နည်းလမ်းကိုသုံးနိုင်သည်။
ဤဆောင်းပါးသည်သင့်ကိုမည်သို့အသုံးပြုရမည်ကိုကြည့်ပြီးရိုးရှင်းသောဥပမာတစ်ခုဖြင့်မည်သို့သရုပ်ပြပါလိမ့်မည်။
fech_object () သည် mySqli_result အတန်းအစား၏နည်းလမ်းဖြစ်ပြီး, ပုံမှန်အားဖြင့်၎င်းသည်စံသတ်မှတ်ထားသောအရာဝတ်ထု ( stdclass ) ကိုပြန်လည်နေရာချထားမှုအမည်ကိုဒေတာဘေ့စ်လယ်ကွင်းအမည်နှင့်ကိုက်ညီသည်။
သင်သည်အတန်းအစားအမည်တွင်လည်းဖြတ်သွားနိုင်သည်။ ထိုနည်းလမ်းကိုသတ်မှတ်ထားသောအတန်းအစား၏ဥပမာအားဖြင့်ပြန်ပို့ပါ။
object mysqli_result::fetch_object ([ string $class_name = "stdClass" [, array $params ]] )
$ class_name : Class Name ကိုချက်ချင်းအတည်ပြုရန်, default သည် stdclass ဖြစ်သည်။
$ Params : class name ကိုသတ်မှတ်ထားပါကဆောက်လုပ်ရေး parameter ကိုလွန်နိုင်သည်။
သင့်တွင် အသုံးပြုသူများ ဟုခေါ်သည့်စားပွဲတစ်ခုရှိသည်ဆိုပါစို့, ဖွဲ့စည်းပုံသည်အောက်ပါအတိုင်းဖြစ်သည် -
သတ် | နံမယ် | အီးမေးလ် |
---|---|---|
1 | အဲီး | Alice@m66.net |
2 | ဘွတ် | Bob@m66.net |
ဤတွင်နမူနာကုဒ်ဖြစ်သည်။
<?php
// ဒေတာဘေ့စ်ကိုဆက်သွယ်ပါ
$mysqli = new mysqli("localhost", "username", "password", "database");
// ဆက်သွယ်မှုကိုစစ်ဆေးပါ
if ($mysqli->connect_errno) {
echo "ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error;
exit();
}
// တစ် ဦး စုံစမ်းမှု execute
$sql = "SELECT id, name, email FROM users";
$result = $mysqli->query($sql);
if ($result) {
while ($user = $result->fetch_object()) {
echo "ID: " . $user->id . "<br>";
echo "Name: " . $user->name . "<br>";
echo "Email: " . $user->email . "<br><br>";
}
$result->free();
} else {
echo "စုံစမ်းမှုမအောင်မြင်ပါ: " . $mysqli->error;
}
// ဆက်သွယ်မှုကိုပိတ်ပါ
$mysqli->close();
?>
ဤဥပမာတွင် Loop $ အသုံးပြုသူ တစ်ခုစီသည်လက်ရှိအတန်း၏ ID , အမည် နှင့် အီးမေးလ် attribute များပါ 0 င်သည့် stdclass အရာဝတ်ထုတစ်ခုဖြစ်သည်။
သငျသညျ fech_object_object () သတ်သတ်မှတ်မှတ်လူတန်းစားအရာဝတ်ထုကိုပြန်ပို့ပေးနိုင်ပါတယ်။
<?php
class User {
public $id;
public $name;
public $email;
public function display() {
echo "[$this->id] $this->name <$this->email><br>";
}
}
$sql = "SELECT id, name, email FROM users";
$result = $mysqli->query($sql);
if ($result) {
while ($user = $result->fetch_object('User')) {
$user->display();
}
$result->free();
}
?>
ဤနည်းအားဖြင့်သင် loop ကို loop တစ်ခုချင်းစီကို အသုံးပြုသူ ဥပမာတစ်ခုရပြီးသင်၎င်း၏နည်းလမ်းများကိုတိုက်ရိုက်ခေါ်ဆိုနိုင်သည်။
အကယ်. စုံစမ်းမှုရလဒ်သည်အချည်းနှီးဖြစ်ပါက FECT_OBJECT () မှားယွင်းသော ပြန်လာသည်။
အကယ်. အတန်းအစားအမည်ကိုသတ်မှတ်ထားပါကအတန်း၏ဂုဏ်သတ္တိများသည် လူသိရှင်ကြား ဖြစ်ရမည်မဟုတ်လျှင်တန်ဖိုးကိုတိုက်ရိုက် သတ်မှတ်. မရပါ။
FETT_OBJECT_OBJECT () ဒေတာတစ်ချိန်တည်းတွင်ဒေတာတစ်တန်းသာထုတ်ယူပြီးကွင်းဆက်တွင်အသုံးပြုရမည်။