လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PDostatement :: Fetchcolumn နှင့်အတူတစ်ခုတည်းကွင်းဆင်းတန်ဖိုးကိုဘယ်လိုရနိုင်မလဲ

PDostatement :: Fetchcolumn နှင့်အတူတစ်ခုတည်းကွင်းဆင်းတန်ဖိုးကိုဘယ်လိုရနိုင်မလဲ

gitbox 2025-05-29

PHP, PDO (PHP Data Obserts) တွင်ဒေတာဘေ့စ်များကိုလည်ပတ်သည့်အခါ, PDostatement :: Fetterolumn function သည်ရလဒ်အနေဖြင့်ကော်လံတစ်ခု၏တန်ဖိုးကိုလျင်မြန်စွာရရှိရန် PDO မှပေးထားသောအလွန်လက်တွေ့ကျသည့်နည်းလမ်းဖြစ်သည်။ အထူးသဖြင့်သင်သည်အချို့သောနယ်ပယ်တစ်ခု၏တန်ဖိုးတစ်ခုတည်းကိုသာမေးမြန်းရန်လိုအပ်သည့်အခါ Fetchcolum သည် code ကိုရိုးရှင်းအောင်ပြုလုပ်နိုင်ပြီးထိရောက်မှုကိုတိုးတက်စေသည်။

ဤဆောင်းပါးသည် PDostatement :: Finnolumn ကို အသုံးပြုရမည်ကိုအသေးစိတ်မိတ်ဆက်ပေးလိမ့်မည်။

1 ။ PDostatement :: Fetchcolumn ဆိုတာဘာလဲ။

PDostatement :: Fetchcolumn သည် pdostatement object ၏နည်းလမ်းများအနက်မှတစ်ခုဖြစ်သည်။ ၎င်းကိုရလဒ်အနေဖြင့်လာမည့်အတန်းမှသတ်မှတ်ထားသောကော်လံတစ်ခု၏တန်ဖိုးကိုနောက်တစ်ခေါက်ပြန်ပို့ရန်အသုံးပြုသည်။ ၎င်းသည်ရိုးရှင်းသောစုံစမ်းမှုတစ်ခုပြုလုပ်ရန်သို့မဟုတ်တန်ဖိုးတစ်ခုတည်ရှိသည်ကိုအတည်ပြုရန်အလွန်ထိရောက်သောနည်းလမ်းဖြစ်သည်။

Syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 mixed PDOStatement::fetchColumn ([ int $column_number = 0 ] )
  • $ column_number : optional parameter သည် 0 မှ 0 0 မှစတင်. ကော်လံ၏အညွှန်းကိန်းကိုညွှန်ပြသည်။

2 ။ အသုံးပြုမှုအခြေအနေများဥပမာ

ဥပမာအားဖြင့်, သင်ဒေတာဘေ့စ်မှအသုံးပြုသူအီးမေးလ်လိပ်စာကိုမေးမြန်းလိုပါက, သင်သည် လယ်ကွင်း တစ်ခုသာရရန်လိုအပ်သည်။

3 ။ တိကျသောစစ်ဆင်ရေးခြေလှမ်းများ

1 ။ ဒေတာဘေ့စ် connection တစ်ခုဖန်တီးပါ

ဦး စွာ, PDO ကိုအသုံးပြုပြီးဒေတာဘေ့စ်ဆက်သွယ်မှုတစ်ခုကိုဖန်တီးရန်လိုအပ်သည်။

 <?php
$dsn = 'mysql:host=localhost;dbname=testdb;charset=utf8mb4';
$username = 'dbuser';
$password = 'dbpass';

try {
    $pdo = new PDO($dsn, $username, $password);
    // ချွင်းချက်မှအမှား mode ကိုသတ်မှတ်ပါ
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
    die("ဒေတာဘေ့စဆက်သွယ်မှုမအောင်မြင်ပါ:" . $e->getMessage());
}
?>

2 ။ query ကိုထုတ်ပြန်ချက်များရေးပါ

ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည် ID 5 နှင့်အသုံးပြုသူတစ် ဦး ၏စာတိုက်ပုံးကိုရယူလိုသည်။

 $sql = "SELECT email FROM users WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':id', 5, PDO::PARAM_INT);
$stmt->execute();

3 ။ တန်ဖိုးကိုရရန် Fetchcolumn ကိုသုံးပါ

ကြေငြာချက်ကိုကွပ်မျက်ပြီးနောက်စာတိုက်ပုံး၏တန်ဖိုးတန်ဖိုးကိုရယူရန် Fetchcolumn () ကို သုံးပါ။

 $email = $stmt->fetchColumn();
echo "အသုံးပြုသူရဲ့အီးမေးလ်လိပ်စာက:" . $email;

4 ။ ပြီးပြည့်စုံသောဥပမာ

အထက်ပါကုဒ်ကိုအောက်ပါအတိုင်းပေါင်းစပ်ပါ -

 <?php
$dsn = 'mysql:host=localhost;dbname=testdb;charset=utf8mb4';
$username = 'dbuser';
$password = 'dbpass';

try {
    $pdo = new PDO($dsn, $username, $password);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $sql = "SELECT email FROM users WHERE id = :id";
    $stmt = $pdo->prepare($sql);
    $stmt->bindValue(':id', 5, PDO::PARAM_INT);
    $stmt->execute();

    $email = $stmt->fetchColumn();

    echo "အသုံးပြုသူရဲ့အီးမေးလ်လိပ်စာက:" . $email;

} catch (PDOException $e) {
    echo "စစ်ဆင်ရေးပျက်ကွက်:" . $e->getMessage();
}
?>

5 ။ ကော်လံမျိုးစုံအတွက်မှတ်သားဖို့အရာ

FETCOFNCONDONCON သည် လက်ရှိအတန်းတွင်ကော်လံတန်ဖိုးတစ်ခုသာပြန်လာလိမ့်မည် (ပုံမှန်အားဖြင့်ကော်လံ 0) ဖြစ်သည်။ ကော်လံမျိုးစုံကိုပြန်ပို့လိုပါက Fetch () ကို သုံး. PDO :: FETT_AST_AST_AST_AST_AST_AST_AST_AST_ASTE နှင့်အခြားပုံစံများကိုရွေးချယ်ပါ။

4 ။ flatchcolumn ကိုအသုံးပြုသည့်အခါမှတ်သားရမည့်အရာများ

  • Fetchcolumn သည် ကော်လံတစ်ခု၏တန်ဖိုးကိုသာပြန်လည်ရရှိပြီးရလဒ်အနေဖြင့်အချက်အလက်မရှိသေးပါက မှားယွင်းစွာ ပြန်လာလိမ့်မည်။

  • အကယ်. SQL query သည်အတန်းမျိုးစုံကိုပြန်လည်ရောက်ရှိပါက၎င်းသည်လက်ရှိအခြေအနေတွင်သာအသုံးပြုသောအခြေအနေများတွင်အသုံးပြုသောအခြေအနေများမှသာအသုံးပြုလိမ့်မည်။

  • ရလဒ်တန်းများရှိသည့်အခါ, သင်ကွင်းဆက်ပေါင်းစပ် feblicumnolumn () ကို သုံးရန်လိုအပ်သည်။

ဥပမာအားဖြင့်:

 $sql = "SELECT username FROM users";
$stmt = $pdo->query($sql);

while (($username = $stmt->fetchColumn()) !== false) {
    echo "အသုံးပြုသူ:" . $username . "<br>";
}

5 ။ ဘုံ application တစ်ခု

  • ထိုကဲ့သို့သောရွေးချယ်ထားသောအရေအတွက် (*) ကဲ့သို့သောတစ်ခုတည်းစာရင်းဇယားတန်ဖိုးကိုရယူပါ။

  • အသုံးပြုသူတစ် ဦး အတွက်ထူးခြားသောလက်ခဏာတစ်ခု, အခြေအနေသို့မဟုတ်တစ်ခုတည်း attribute ကိုတန်ဖိုးရရှိသည်။

  • (အီးမေးလ်လိပ်စာကိုပုံတူပွားခြင်းရှိမရှိစစ်ဆေးမှုရှိမရှိဆုံးဖြတ်ရန် (ဥပမာ) ။

ဥပမာအားဖြင့်:

 $sql = "SELECT COUNT(*) FROM users WHERE email = :email";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':email', '[email protected]', PDO::PARAM_STR);
$stmt->execute();
$count = $stmt->fetchColumn();

if ($count > 0) {
    echo "အီးမေးလ်လိပ်စာရှိပြီးသား";
} else {
    echo "အီးမေးလ်ရနိုင်သည်";
}

6 ။ အကျဉ်းချုပ်

PDostatement :: Fetchcolumn သည် ဒေတာဘေ့စ်တစ်ခုမှတစ် ဦး ချင်းစီကွင်းဆင်းတန်ဖိုးများကိုဖြည့်ဆည်းရန်အတိုချုပ်နှင့်ထိရောက်သောနည်းလမ်းဖြစ်သည်။ အကယ်. မေးမြန်းမှုသည်အချို့သောကော်လံတစ်ခုသို့မဟုတ်တန်ဖိုးတစ်ခုရရန်သာလိုအပ်ကြောင်းသေချာသည့်အခါ၎င်းသည်အသင့်တော်ဆုံးရွေးချယ်မှုဖြစ်သည်။ ၎င်း၏အသုံးပြုမှုကိုကျွမ်းကျင်မှုသည်သင်၏ PHP ဒေတာဘေ့စ်ကုဒ်ကိုပိုမိုတိကျပြီးပိုမိုရှင်းလင်းစွာပြုလုပ်နိုင်သည်။

Login Verification, ဒေတာစာရင်းအင်း များ , ၎င်းကို အသုံးပြု. ကျွမ်းကျင်မှုသည်သင်၏ဒေတာဘေ့စ်လုပ်ငန်းများကိုပိုမိုတိကျပြီးထိရောက်စေသည်။