PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင် PDO သည်ဒေတာဘေ့စ်များကိုအသုံးပြုရန်လူကြိုက်များသောပြောင်းလွယ်ပြင်လွယ်ရှိသောနည်းလမ်းဖြစ်သည်။ အထူးသဖြင့်ဒေတာရှေ့နောက်ညီညွတ်မှုလိုအပ်သည့်အခါငွေပေးငွေယူယန္တရားသည်အထူးအရေးကြီးသည်။ တစ်ချိန်တည်းမှာပင်ကျွန်ုပ်တို့သည်မေးမြန်းမှုကိုပြုလုပ်ရန်လိုအပ်သည့်အခါ pdostatement :: Fetchobjection function သည်အလွန်အဆင်ပြေသည်။
ဤဆောင်းပါးသည်ဒေတာဘေ့စ်ရှိအရာဝတ်ထုများကိုငွေသွင်းယူမှုနှင့်ပေါင်းစပ်ခြင်းဖြင့်ဒေတာဘေ့စ်ရှိအရာဝတ်ထုများကိုရယူရန် FetCObject နည်းလမ်းကိုမည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ရှင်းပြပါမည်။
ငွေပေးငွေယူသည်ဒေတာဘေ့စ်စီမံခန့်ခွဲမှုတွင်အရေးကြီးသောအယူအဆတစ်ခုဖြစ်သည်။ ပုံမှန် application အခြေအနေများတွင်ရန်ပုံငွေလွှဲပြောင်းခြင်း,
PDO တွင်ငွေပေးချေမှုအပြောင်းအလဲနဲ့များသောအားဖြင့်အောက်ပါနည်းလမ်းသုံးခုမှတဆင့်ဖျော်ဖြေသည် -
beginningsactacingaction () ငွေပေးငွေယူကိုစတင်သည်
ကျူးလွန် () ကျူးလွန် () ကျူးလွန်) () ကျူးလွန်) ငွေပေးချေမှု
RollBack () RollBack ငွေပေးငွေယူ
Fetchobjectobject သည် PDostatement မှပေးသောနည်းလမ်းတစ်ခုဖြစ်သည်။ ဤချဉ်းကပ်မှုသည် OOP စတိုင်အတွက်ပိုမိုသင့်တော်ပြီးကုဒ်ကိုထိန်းသိမ်းရန်ပိုမိုလွယ်ကူသည်။
အသုံးပြုမှုဥပမာ:
$object = $statement->fetchObject();
echo $object->column_name;
အောက်တွင်ကျွန်ုပ်တို့သည်ငွေပေးချေမှုအပြောင်းအလဲအတွက် FetCoboPject ကို မည်သို့အသုံးပြုရမည်ကိုသရုပ်ဖော်ရန်အပြည့်အဝဥပမာတစ်ခုကိုအသုံးပြုသည်။
အောက်ပါအတိုင်းဖွဲ့စည်းပုံနှင့်အတူ အသုံးပြုသူ စားပွဲပေါ်မှာရှိသည်ဆိုပါစို့:
သတ် | နံမယ် | အီးမေးလ် |
---|---|---|
1 | အဲီး | [email protected] |
2 | ဘွတ် | [email protected] |
သုံးစွဲသူကို ID = 1 ဖြင့်ငွေပေးချေမှုဖြင့်မေးမြန်းလိုပါကအရာဝတ်ထုနည်းဖြင့်အချက်အလက်များကိုရယူလိုသည်။
<?php
// ဒေတာဘေ့စ် configuration ကို
$dsn = 'mysql:host=localhost;dbname=testdb;charset=utf8mb4';
$username = 'dbuser';
$password = 'dbpass';
try {
// ဖန်တီး PDO နမူနာ
$pdo = new PDO($dsn, $username, $password, [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
]);
// ငွေပေးငွေယူတစ်ခုစတင်ပါ
$pdo->beginTransaction();
// စုံစမ်းမှုကြေညာချက်ကိုပြင်ဆင်ပါ
$stmt = $pdo->prepare('SELECT * FROM users WHERE id = :id');
$stmt->execute(['id' => 1]);
// အသုံးပြု fetchObject ရလဒ်များကိုရယူပါ
$user = $stmt->fetchObject();
if ($user) {
echo "အသုံးပြုသူ: " . htmlspecialchars($user->name) . "<br>";
echo "အသုံးပြုသူအီးမေးလ်: " . htmlspecialchars($user->email) . "<br>";
} else {
echo "အသုံးပြုသူကိုရှာမတွေ့ပါ。";
}
// တင်သွင်းမှုတင်သွင်း
$pdo->commit();
} catch (Exception $e) {
// ခြွင်းချက်တစ်ခုဖြစ်ပွားခဲ့သည်,ပြန်အရောင်းအလှိမ့်
$pdo->rollBack();
echo "အမှားတစ်ခုဖြစ်ပွားခဲ့သည်: " . htmlspecialchars($e->getMessage());
}
?>
ခြွင်းချက်ကိုင်တွယ်ခြင်း - ငွေပေးချေမှုတစ်ခုတွင်မည်သည့်ခြွင်းချက်ကိုမဆိုဖမ်းမိနိုင်ပြီးငွေပေးချေမှုကိုဒေတာအဂတိလိုက်စားမှုကိုရှောင်ရှားရန်ငွေပေးချေမှုကိုပြန်လှိမ့်နိုင်သည်။
Security : Parameter သည် bindeter binding ( bindparam သို့မဟုတ် array parraameter မှပြောင်းရွှေ့ခြင်း) သည် SQL ဆေးထိုးတိုက်ခိုက်မှုများကိုထိရောက်စွာတားဆီးနိုင်သည်။
ရလဒ် Security - Htmlspecialchars ကို အသုံးပြုခြင်းသည် XSS တိုက်ခိုက်မှုအန္တရာယ်ကိုရှောင်ရှားနိုင်သည်။
PDostatement :: FetCoboPject ကို အသုံးပြု. ငွေသွင်းခြင်းလုပ်ငန်းစဉ်တွင်အချက်အလက်များကိုအရာဝတ်ထု ဦး စားပေးပရိုဂရမ်အလေ့အထများနှင့်ပိုမိုကိုက်ညီမှုရှိစေရန်ပြုလုပ်နိုင်ပြီးကုဒ်၏ဖတ်နိုင်မှုနှင့်ထိန်းသိမ်းခြင်းကိုလည်းတိုးတက်စေနိုင်သည်။ ဤနည်းစနစ်ကိုကျွမ်းကျင်ခြင်းသည်သင်၏ PHP စီမံကိန်းကိုခိုင်မာပြီးကြော့ရှင်းစေလိမ့်မည်။
PDO ၏ပိုမိုအဆင့်မြင့်သုံးစွဲမှုအကြောင်းပိုမိုလေ့လာလိုပါကအသေးစိတ်အချက်အလက်များအတွက် https:/gitbox.net/docs/pdo သို့သင်ဝင်ရောက်ကြည့်ရှုနိုင်သည်။