လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> 【ဒေတာဘေ့စ်၏စုံစမ်းမှုရလဒ်အားလုံးကို mysqli_result :: fetch_all မှတဆင့်ဘယ်လိုရနိုင်မလဲ။ အသေးစိတ်ခြေလှမ်းခွဲခြမ်းစိတ်ဖြာ]

【ဒေတာဘေ့စ်၏စုံစမ်းမှုရလဒ်အားလုံးကို mysqli_result :: fetch_all မှတဆင့်ဘယ်လိုရနိုင်မလဲ။ အသေးစိတ်ခြေလှမ်းခွဲခြမ်းစိတ်ဖြာ]

gitbox 2025-08-26

PHP တွင် MySQLI ကို အသုံးပြု. ဒေတာဘေ့စ်မေးမြန်းချက်များကိုလုပ်ဆောင်ပြီးနောက်ကျွန်ုပ်တို့သည်များသောအားဖြင့်စုံစမ်းမှုရလဒ်အားလုံးကိုထိရောက်စွာနှင့်အဆင်ပြေစွာရရှိလိုကြသည်။ Object-Oriented MySQLI အသုံးပြုမှုတွင် MySQLI_RESELT :: Fetch_All သည် ရလဒ်အားလုံးကိုတစ်ပြိုင်နက်တည်းရရန်နှင့်၎င်းတို့အား array အဖြစ်ပြန်ပို့ရန်အလွန်တိကျသောနည်းလမ်းဖြစ်သည်။ ဤဆောင်းပါးသည် Fetch_All နည်းလမ်းကိုမည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ဖော်ပြရန်နှင့်၎င်း၏အသုံးပြုမှုအခြေအနေများနှင့်ကြိုတင်ကာကွယ်မှုများပြုလုပ်နိုင်သည်ကိုအသေးစိတ်ဖော်ပြထားသည်။

1 ။ အခြေခံအယူအဆများမိတ်ဆက်

mySqli_result :: Fetch_All သည် MySQLI_RESURRESURS အတန်းထဲတွင်နည်းလမ်းတစ်ခုဖြစ်သည်။ ၎င်းသည်နှစ်ရှုထောင်ခင်းကျင်းမှုကိုပြန်လည်စီစဉ်သည်, အတန်းတစ်ခုစီသည်စုံစမ်းမှုရလဒ်တွင်စံချိန်တင်ဖြစ်သည်။

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

 <span><span><span class="hljs-keyword">array</span></span><span> mysqli_result::</span><span><span class="hljs-title function_ invoke__">fetch_all</span></span><span>(</span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$mode</span></span><span> = MYSQLI_NUM)
</span></span>
  • $ mode parameter သည် return in ည့်ခန်း၏ပုံစံကိုသတ်မှတ်ရန်အသုံးပြုသည်။ များသောအားဖြင့်အသုံးပြုသူများမှာ -

    • MySQLI_Num : ကိန်းဂဏန်းအညွှန်းကိန်းခင်းကျင်းမှုကိုပြန်ပို့သည်။

    • MySQLI_ASSOC : Associative Index Array (Field Name) ကိုသော့အဖြစ်ပြန်ပို့သည်။

    • mysqli_both : နံပါတ်နှင့်ဆက်စပ်ညွှန်းကိန်းနှစ်ခုလုံးကိုပြန်ပို့သည်။

2 ။ ဥပမာ - query query ရလဒ်အားလုံးကိုရယူရန် FCLCH_ALL ကိုမည်သို့အသုံးပြုရမည်နည်း

အောက်တွင်ကျွန်ုပ်တို့သည် Fetch_All အသုံးပြုမှုကိုပြည့်စုံသောဥပမာတစ်ခုဖြင့်ပြသခဲ့သည်။

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// ဒေတာဘေ့စ် connection configuration ကို</span></span><span>
</span><span><span class="hljs-variable">$host</span></span><span> = </span><span><span class="hljs-string">"localhost"</span></span><span>;
</span><span><span class="hljs-variable">$user</span></span><span> = </span><span><span class="hljs-string">"root"</span></span><span>;
</span><span><span class="hljs-variable">$password</span></span><span> = </span><span><span class="hljs-string">""</span></span><span>;
</span><span><span class="hljs-variable">$database</span></span><span> = </span><span><span class="hljs-string">"test_db"</span></span><span>;

</span><span><span class="hljs-comment">// ဆက်သွယ်မှုတစ်ခုဖန်တီးပါ</span></span><span>
</span><span><span class="hljs-variable">$mysqli</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">mysqli</span></span><span>(</span><span><span class="hljs-variable">$host</span></span><span>, </span><span><span class="hljs-variable">$user</span></span><span>, </span><span><span class="hljs-variable">$password</span></span><span>, </span><span><span class="hljs-variable">$database</span></span><span>);

</span><span><span class="hljs-comment">// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;connect_error) {
    </span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"ဆက်သွယ်မှုမအောင်မြင်ပါ: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;connect_error);
}

</span><span><span class="hljs-comment">// စုံစမ်းမှုကြေညာချက်</span></span><span>
</span><span><span class="hljs-variable">$sql</span></span><span> = </span><span><span class="hljs-string">"SELECT id, name, email FROM users"</span></span><span>;

</span><span><span class="hljs-comment">// တစ် ဦး စုံစမ်းမှု execute</span></span><span>
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">query</span></span><span>(</span><span><span class="hljs-variable">$sql</span></span><span>);

</span><span><span class="hljs-comment">// စုံစမ်းမှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$result</span></span><span> === </span><span><span class="hljs-literal">false</span></span><span>) {
    </span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"စုံစမ်းမှုမအောင်မြင်ပါ: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;error);
}

</span><span><span class="hljs-comment">// အသုံးပြု fetch_all ရလဒ်အားလုံးကိုရယူပါ(associative array နည်းလမ်း)</span></span><span>
</span><span><span class="hljs-variable">$data</span></span><span> = </span><span><span class="hljs-variable">$result</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">fetch_all</span></span><span>(MYSQLI_ASSOC);

</span><span><span class="hljs-comment">// ရလဒ်ရလဒ်</span></span><span>
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$data</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$row</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ID: "</span></span><span> . </span><span><span class="hljs-variable">$row</span></span><span>[</span><span><span class="hljs-string">'id'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>;
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Name: "</span></span><span> . </span><span><span class="hljs-variable">$row</span></span><span>[</span><span><span class="hljs-string">'name'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>;
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Email: "</span></span><span> . </span><span><span class="hljs-variable">$row</span></span><span>[</span><span><span class="hljs-string">'email'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;&lt;br&gt;"</span></span><span>;
}

</span><span><span class="hljs-comment">// ရလဒ်ကိုလွှတ်ပေးရန်</span></span><span>
</span><span><span class="hljs-variable">$result</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">free</span></span><span>();

</span><span><span class="hljs-comment">// ဆက်သွယ်မှုကိုပိတ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">close</span></span><span>();
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

3 ။ finch_all ကိုအသုံးပြုခြင်း၏အားသာချက်များ

  • Common : အစဉ်အလာရက်စွဲပါစာအရေးအသားနည်းလမ်းနှင့်နှိုင်းယှဉ်လျှင် ($ Row = $ ရလဒ် -> FECT_AST_AST_)) နှင့်နှိုင်းယှဉ်လျှင်ကုဒ်နှင့်ပိုမိုရှင်းလင်းမှုနည်းသည်။

  • ထိရောက်မှု - အချက်အလက်အားလုံးကိုမှတ်ဉာဏ်ထဲထည့်ပါ။

  • ပြောင်းလွယ်ပြင်လွယ် - အမျိုးမျိုးသောခင်းကျင်းပုံစံများကိုထောက်ပံ့သည် (ကိန်းဂဏန်းအညွှန်းကိန်း, ဆက်စပ်သည့်အညွှန်းကိန်းများသို့မဟုတ်နှစ် ဦး စလုံး) ကိုထောက်ပံ့သည်။

4 ။ မှတ်စုများ

  1. ဒေတာ volume သည်ကြီးမား သည့် အခါသတိထားပါ

  2. MySQL ဇာတိယာဉ်မောင်း (MySQLND) လိုအပ်ချက်များ - FETCH_ALL နည်းလမ်းသည် MySQLND (MySQL ဇာတိယာဉ်မောင်း) လိုအပ်သည်။ PHP configurations အချို့တွင် MySQLND ကိုမဖွင့်ပါကဤနည်းလမ်းကိုမရနိုင်ပါ။

  3. အမှားကိုင်တွယ်ခြင်း - စုံစမ်းမှုရလဒ်သည် မှားယွင်းသော ဟုတ်မဟုတ်ကိုအမြဲတမ်းစစ်ဆေးရန်အကြံပြုသည်။

V. နိဂုံးချုပ်

MySQLI_RESELT :: FETT_ALL , PHP developer များသည်ဒေတာဘေ့စ်မှပိုမိုထိရောက်စွာမှအပြည့်အဝစုံစမ်းမှုရလဒ်များရရှိနိုင်ပါသည်။ ဤနည်းလမ်းသည်ရိုးရှင်းလွယ်ကူပြီးအဆင်ပြေသော်လည်းအသုံးပြုရန်အတွက်အမှန်တကယ်ဒေတာပမာဏနှင့်စနစ်အရင်းအမြစ်များအပေါ် အခြေခံ. ကျိုးကြောင်းဆီလျော်သောရွေးချယ်မှုများကိုပြုလုပ်ရန်လိုအပ်သည်။ ၎င်း၏အသုံးပြုမှုမြင်ကွင်းများကိုကျွမ်းကျင်ရန်သင်၏ဒေတာဘေ့စ်စစ်ဆင်ရေးနှင့်ကုဒ်ဖတ်ရှုနိုင်မှု၏ထိရောက်မှုကိုတိုးတက်စေသည်။