MySQL_FETCE_ARRAY function သည် array တစ်ခုအဖြစ်သတ်မှတ်ထားသည့်ရလဒ်မှအတန်းတစ်ခုဖြစ်ပြီး Association နှင့် index နှစ်ခုလုံးပါ 0 င်သည်။
$result = mysql_query("SELECT * FROM users");
while ($row = mysql_fetch_array($result)) {
print_r($row);
}
ဤတွင် $ အတန်း သည်ကွင်းဆက်တစ်ခုစီတွင်မှတ်တမ်းတစ်ခုရှိပြီးအမျိုးအစားတစ်ခုမှာ array တစ်ခုဖြစ်သည်။
MySQL_FETT_ARRAY မှမှတ်တမ်းတစ်ခုရသောအခါသင်သည်များသောအားဖြင့် Fonteach ကို ဤအချက်အလက်နယ်ပယ်အားလုံးမှတစ်ဆင့်ဆက်သွယ်ရန်အသုံးပြုလေ့ရှိသည်။
while ($row = mysql_fetch_array($result)) {
foreach ($row as $key => $value) {
echo "$key => $value<br>";
}
}
ဒါကမှန်တယ်, ဘာဖြစ်လို့လဲဆိုတော့ $ အတန်း ကိုယ်နှိုက်က array ဖြစ်ပါတယ်။
MySQL_FETCH_ARRAY သည်စံချိန်တစ်ခုတည်းပြန်ပို့ခြင်းနှင့် Query Reality အရင်းအမြစ်များအတွက် တိုက်ရိုက် ကိုတိုက်ရိုက်မသုံးနိုင်ပါ။
foreach ($result as $row) {
// မှားယွင်းသောအသုံးပြုမှု,$resultဒါဟာအရင်းအမြစ်တစ်ခုပါ,array မဟုတ်ပါဘူး
}
ဤစာအရေးအသားနည်းလမ်းသည်မှားပြီးအမှားတစ်ခုဖြစ်ပေါ်လိမ့်မည်။
fonteach ကို traverse အားလုံးကိုဖြတ်သန်းရန်သင်အသုံးပြုလိုပါကအလေ့အကျင့်သည်ရလဒ်အားလုံးကိုဖတ်ရန်ဖြစ်သည်, ထို့နောက်ဖြတ်သန်းရန်ဖြစ်သည်။
$rows = [];
while ($row = mysql_fetch_array($result)) {
$rows[] = $row;
}
foreach ($rows as $record) {
// တစ်ခုချင်းစီကိုမှတ်တမ်းတင်ပါ
echo $record['username'] . "<br>";
}
ဤနည်းအားဖြင့် foreach ရှိမှတ်တမ်းအားလုံးကိုအလွယ်တကူကိုင်တွယ်နိုင်သည်။
MySQL_FETCH_ARRY မှပြန်လာသောခင်းကျင်းမှုသည်ပုံမှန်အားဖြင့်ကိန်းဂဏန်းများနှင့်ဆက်စပ်သည့်ညွှန်းကိန်းနှစ်ခုလုံးတွင် data restundancy ။ Associative Array များသာရရန်အကြံပြုသည်။
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
// $rowသာသက်ဆိုင်တဲ့ arrays သာပါရှိသည်
}
ဤနည်းအားဖြင့်ခင်းကျင်းသည်ရိုးရှင်းလွယ်ကူပြီး fonteach traversal သည်ပိုမိုအဆင်ပြေသည်။
<?php
// ဒေတာဘေ့စ်ကိုဆက်သွယ်ပါ
$link = mysql_connect("gitbox.net", "username", "password");
mysql_select_db("testdb", $link);
// ဒေတာရှာဖွေမှုဒေတာ
$result = mysql_query("SELECT id, username, email FROM users");
// ဒေတာအားလုံးကိုဖတ်ပါ
$rows = [];
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$rows[] = $row;
}
// အသုံးပြုforeachအားလုံးမှတ်တမ်းများမှတဆင့်ကြားမှာ
foreach ($rows as $record) {
echo "အသုံးပြုသူID: " . $record['id'] . "<br>";
echo "အသုံးပြုသူ名: " . $record['username'] . "<br>";
echo "စာပို့: " . $record['email'] . "<br><hr>";
}
// ဆက်သွယ်မှုကိုပိတ်ပါ
mysql_close($link);
?>