⊗ppPmDBRGet 366 of 447 menu

การรับผลลัพธ์จากคำสั่ง SQL ใน PHP

ในบทเรียนที่แล้ว เราได้สร้างโค้ดทดสอบขึ้นมา ขอทบทวนส่วนสำคัญของโค้ด ที่ทำการ เรียกสอบถามไปยังฐานข้อมูล:

<?php $query = 'SELECT * FROM users'; $res = mysqli_query($link, $query) or die(mysqli_error($link)); var_dump($res); ?>

ดังที่คุณเห็น หลังจากที่มีการ ส่งคำสั่งสอบถามไปยังฐานข้อมูลแล้ว ในตัวแปร $res ก็จะมีผลลัพธ์จากการกระทำนั้นอยู่ อย่างไรก็ตาม ผลลัพธ์ไม่ได้อยู่ในรูปแบบที่เราต้องการ ใน PHP แต่เป็นในรูปแบบที่ฐานข้อมูล ส่งมาให้เรา

เพื่อที่จะได้รับผลลัพธ์ในรูปแบบ ที่เราคุ้นเคย จำเป็นต้องใช้ฟังก์ชัน mysqli_fetch_assoc ซึ่งดึงข้อมูล หนึ่งแถวออกมาจากผลลัพธ์

ลองมาทดสอบกัน:

<?php $row = mysqli_fetch_assoc($res); var_dump($row); ?>

ผลลัพธ์จาก var_dump จะแสดงอาร์เรย์ ของพนักงานคนแรก:

<?php ['id' => 1, 'name' => 'user1', 'age' => 23, 'salary' => 400] ?>

ขณะเดียวกัน จากตัวแปร $res พนักงานคนแรก จะหายไป และการเรียกใช้ mysqli_fetch_assoc ครั้งถัดไป จะได้รับพนักงานคนถัดไป

และเราสามารถเรียกใช้ฟังก์ชันของเราได้เรื่อยๆ จนกว่าพนักงานจะหมด เมื่อใดที่สิ่งนี้เกิดขึ้น การเรียกใช้ฟังก์ชัน ครั้งถัดไปจะคืนค่า false

มาลองทดสอบกัน:

<?php $row1 = mysqli_fetch_assoc($res); var_dump($row1); // พนักงานหมายเลข 1 $row2 = mysqli_fetch_assoc($res); var_dump($row2); // พนักงานหมายเลข 2 $row3 = mysqli_fetch_assoc($res); var_dump($row3); // พนักงานหมายเลข 3 $row4 = mysqli_fetch_assoc($res); var_dump($row4); // พนักงานหมายเลข 4 $row5 = mysqli_fetch_assoc($res); var_dump($row5); // พนักงานหมายเลข 5 $row6 = mysqli_fetch_assoc($res); var_dump($row6); // พนักงานหมายเลข 6 $row7 = mysqli_fetch_assoc($res); var_dump($row7); // จะแสดง NULL - พนักงานหมดแล้ว ?>
ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ