PHP တွင် MySQL ဒေတာဘေ့စ်ကို operating လုပ်သည့်အခါကွင်းဆင်းအချက်အလက်များကိုရယူရန်အတွက်အသုံးများသောလိုအပ်ချက်ဖြစ်သည်။ အစဉ်အလာအရ MySQL_FETCE_FERT_FERTIFEFFEFFEFFIEFFIDE function ကို query ရလဒ်များရှိသည့်ကွက်လပ်များ၏ metadata အချက်အလက်များကိုရရှိရန်အသုံးပြုသည်။ PHP, PDO (PHP Data Obserts) ၏ဖွံ့ဖြိုးတိုးတက်မှုနှင့်အတူ PDO (PHP Data Oblatters) သည်ပိုမိုခေတ်မီပြီးပြောင်းလွယ်ပြင်လွယ်ဒေတာဘေ့စ်စစ်ဆင်ရေး interface ဖြစ်လာသည်။ ဤဆောင်းပါးသည် developer များအမှန်တကယ်စီမံကိန်းများအတွက်အကျိုးသင့်အကြောင်းသင့်ရှိသောရွေးချယ်မှုများရရှိစေရန်လယ်ကွင်းအချက်အလက်များကိုရရှိရန်နှစ် ဦး အကြားကွဲပြားခြားနားမှုများကိုအသေးစိတ်နှိုင်းယှဉ်ခြင်းနှင့်ဆန်းစစ်ခြင်းကိုအသေးစိတ်ဖော်ပြထားသည်။
MySQL_FETCE_fEFFEFEF
၎င်းသည် MySQL extension ၏အစောပိုင်း MySQL extension ၏အစိတ်အပိုင်းဖြစ်သည်။ MySQL_QUERY မှတစ်ဆင့် Field အမည်, အရှည်စစသည့်စသည့် MySQL_QUERY ရလဒ်အစက်အပြောက်မှခွဲထုတ်ရန်အထူးအသုံးပြုသည်။
ပန်ကေ
PDO သည်ဒေတာဘေ့စ်ယာဉ်မောင်းမျိုးစုံကိုအထောက်အကူပြုသောအရာဝတ်ထု ဦး တည်ရာဒေတာဘေ့စ် access actstraction actstraction abstraction actstraction actstraction actstraction actstraction actstraction အလွှာတစ်ခုဖြစ်သည်။ ၎င်းသည်စည်းလုံးညီညွတ်သော interface နှင့်ကြွယ်ဝသောလုပ်ဆောင်မှုများကိုထောက်ပံ့ပေးပြီး လယ်ကွင်း အချက်အလက်များကိုရယူရန် နည်းလမ်းများ သည်အတော်အတန်ကွဲပြားခြားနားသော,
<?php
$link = mysql_connect('gitbox.net', 'username', 'password');
mysql_select_db('testdb', $link);
$result = mysql_query('SELECT id, name FROM users', $link);
$field_count = mysql_num_fields($result);
for ($i = 0; $i < $field_count; $i++) {
$field_info = mysql_fetch_field($result, $i);
echo "Field Name: " . $field_info->name . "\n";
echo "ပုံနှိပ်စာ: " . $field_info->type . "\n";
echo "အရှည်: " . $field_info->length . "\n\n";
}
mysql_close($link);
?>
<?php
$pdo = new PDO('mysql:host=gitbox.net;dbname=testdb', 'username', 'password');
$stmt = $pdo->query('SELECT id, name FROM users');
for ($i = 0; $i < $stmt->columnCount(); $i++) {
$meta = $stmt->getColumnMeta($i);
echo "Field Name: " . $meta['name'] . "\n";
echo "数据ပုံနှိပ်စာ: " . $meta['native_type'] . "\n";
echo "အရှည်: " . $meta['len'] . "\n\n";
}
?>
သီးခြားထင်ရှားသော | MySQL_FETCE_fEFFEFEF | PDO GETCOLUCKMETA |
---|---|---|
တိုးချဲ့ status ကို | အဟောင်းကိုတိုးချဲ့ခြင်း, PHP7 သည်ကန့်ကွက်သည် | ခေတ်သစ်ချဲ့ထွင်ခြင်း, ရေရှည်ပံ့ပိုးမှု |
ဘယ်လိုသုံးရမလဲ | အရင်းအမြစ်လက်ကိုင်အပေါ်အခြေခံပြီးအလုပ်လုပ်တဲ့ | pdostatement အရာဝတ်ထုအပေါ်အခြေခံပြီးအရာဝတ်ထု -oriented |
ဒေတာဘေ့စ်အမျိုးအစားများကိုထောက်ပံ့ပါ | MySQL ကိုသာထောက်ပံ့ပါ | မျိုးစုံဒေတာဘေ့စ်များကိုထောက်ပံ့သည် |
သတင်းအချက်အလက်ကြွယ်ဝမှုကိုပြန်သွားပါ | အခြေခံလယ်ကွင်းအချက်အလက်သာ (အမည်, အမျိုးအစား, အရှည်) ကိုသာထောက်ပံ့ပေးသည် | ပိုမိုအသေးစိတ်ကျသော metadata (စားပွဲတင်အမည်များ, ဒေတာဘေ့စ်အမည်များစသည်ဖြင့်) |
လုံခြုံမှုနှင့်တည်ငြိမ်မှု | စွန့်ပစ်, ညံ့ဖျင်းသောလုံခြုံမှုနှင့်စွမ်းဆောင်ရည် | ကြိုတင်ကာကွယ်ရေး, လုံခြုံစိတ်ချရသောစွမ်းဆောင်ရည်ကိုထောက်ပံ့သည် |
အမှားကိုင်တွယ် | function ကိုပြန်လာတန်ဖိုးကိုအားဖြင့်စီရင် | ခြွင်းချက်ယန္တရားအားဖြင့်ဖမ်းရန်လွယ်ကူသည် |
ပြောင်းလွယ်ပြင်လွယ် | MySQL မှကန့်သတ်မည့် extension များ | အမျိုးမျိုးသောဒေတာဘေ့စ်များအတွက်လွယ်ကူစွာထောက်ခံမှု |
PDO သည်စီမံကိန်းအသစ်များအတွက်ပိုမိုနှစ်သက်သည်
PDO သည် SQL Injection ၏အန္တရာယ်ကိုရှောင်ရှားရန်ပိုမိုလုံခြုံသော parameter ကိုထောက်ပံ့ပေးရုံသာမကပိုမိုကောင်းမွန်သောစံသတ်မှတ်ထားသောနယ်ပယ်သတင်းအချက်အလက်များကိုပိုမိုကောင်းမွန်စေသည်။
စီမံကိန်းဟောင်းများကိုထိန်းသိမ်းထားသည့်အခါအပေးအယူ - offs <br> အကယ်. စီမံကိန်းသည် MySQL extensions ဟောင်းများကို အသုံးပြု. ပြောင်းရွှေ့ရန်မဖြစ်သေးပါက MySQL_FOTCE_FIELD ကို ယာယီဆက်လက်အသုံးပြုနိုင်သည်။
getcoummeta ၏လိုက်ဖက်တဲ့ကိုဂရုပြုပါ PDO သည် GetcoNummeta () နည်းလမ်းကိုထောက်ပံ့သော်လည်းအချို့သောဒေတာဘေ့စ်ယာဉ်မောင်းများသည်ဤနည်းလမ်းကိုအပြည့်အဝမထောက်ခံပါ။
အစွန်း | MySQL_FETCE_fEFFEFEF | PDO GETCOLUCKMETA |
---|---|---|
အသုံးပြုနိုင်မှု | ဟောင်းစီမံကိန်း, စွန့်ပစ် | စီမံကိန်းအသစ်, အကြံပြု |
လုပ်ဆောင်ချက် | အခြေခံလယ်ကွင်းသတင်းအချက်အလက် | ကြွယ်ဝသောနှင့်စံလယ်ကွင်း metadata |
လုံခွုံမှု | နျိမ့် | မြင့်မားသော, Preprocessing ထုတ်ပြန်ချက်များနှင့်ခြွင်းချက်ကိုင်တွယ် |
ပြောင်းလွယ်ပြင်လွယ် | MySQL သာ | Multi-database ပံ့ပိုးမှု, အားကောင်းသောစကေး |
ယေဘုယျအားဖြင့် MySQL_Fetch_fetch_field သည်သမိုင်းဆိုင်ရာစီမံကိန်းများအတွက်ပြုပြင်ထိန်းသိမ်းရန်အတွက်သင့်လျော်ပြီးခေတ်မီဖွံ့ဖြိုးတိုးတက်မှုသည် PDO ကိုအသုံးပြုသင့်သည်။ PDE မှတစ်ဆင့် developer များမှတဆင့်ပိုမိုလုံခြုံသောဒေတာဘေ့စ်အပြန်အလှန်ဆက်သွယ်မှုအတွေ့အကြုံကိုရရှိရန်သာမက,