Hàm Show Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức. Cú phápCú
pháp: Trong đó:
Kết quả trả vềHàm sẽ trả về mảng kết hợp hoặc liên tục chứa thông tin của hàng kết quả. Bài viết này được đăng tại [free tuts .net] Ví dụCách sử dụng hàm Code $con=mysqli_connect("localhost","my_user","my_password","my_db"); // Check connection if (mysqli_connect_errno()){ echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $sql="SELECT Lastname,Age FROM Persons ORDER BY Lastname"; $result=mysqli_query($con,$sql); // Numeric array $row=mysqli_fetch_array($result,MYSQLI_NUM); printf ("%s (%s)\n",$row[0],$row[1]); // Associative array $row=mysqli_fetch_array($result,MYSQLI_ASSOC); printf ("%s (%s)\n",$row["Lastname"],$row["Age"]); // Free result set mysqli_free_result($result); mysqli_close($con); Tham khảo: w3schools.com Hàm Cú phápCú pháp: Trong đó:
Kết quả trả vềHàm sẽ trả về mảng kết hợp hoặc liên tục chứa thông tin của hàng kết quả. Ví dụCách sử dụng hàm Code $con=mysqli_connect("localhost","my_user","my_password","my_db"); // Check connection if (mysqli_connect_errno()){ echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $sql="SELECT Lastname,Age FROM Persons ORDER BY Lastname"; $result=mysqli_query($con,$sql); // Numeric array $row=mysqli_fetch_array($result,MYSQLI_NUM); printf ("%s (%s)\n",$row[0],$row[1]); // Associative array $row=mysqli_fetch_array($result,MYSQLI_ASSOC); printf ("%s (%s)\n",$row["Lastname"],$row["Age"]); // Free result set mysqli_free_result($result); mysqli_close($con); Tham khảo: w3schools.com Trong các câu lệnh PHP có nhiều lệnh nhìn qua có cảm giác chúng giống nhau hoàn toàn. Một trong số đó là mysqli_fetch_array và mysqli_fetch_assoc. Chúng đều có chức năng fetch dữ liệu từ câu query nhưng chắc chắn rằng sẽ có sự khác biệt. Vậy sẽ khác nhau giữa mysqli_fetch_array và mysqli_fetch_assoc là gì?‘fetch’ trong tiếng Anh nghĩa là “đi tìm” vậy với câu lệnh này bạn hiểu nôm na là đi tìm dữ liệu đưa vào mảng. mysqli_fetch_array: trả về một mảng có cả khóa số và chuỗi kết hợp (tên cột) , vì vậy ở đây bạn có thể sử dụng $row[‘column_name’] hoặc $row[0]
Bạn sẽ chạy ví dụ bên dưới (Nếu trong cơ sở dữ liệu chưa có gì hãy đọc lại bài trên nhé!): <?php $link = mysqli_connect('localhost', 'root', '', 'data') or die(mysql_error()); if ($link) { echo '<script language="javascript">alert("Kết nối thành công!");</script>'; } else { echo "Kết nối thất bại!"; } $sql = "SELECT * FROM member"; $result = mysqli_query($link, $sql) or die(mysql_error()); while ($row = mysqli_fetch_array($result)) { print $row[0]; print "\n"; print $row[1]; print "\n"; print $row[3]; print "\n"; print $row[4]."<br/>"; } ?> Khi chạy bạn sẽ nhận được kết quả như sau: mysqli_fetch_assoc: sẽ trả về mảng khóa được lập chỉ mục chuỗi và không có mảng số, do đó bạn sẽ không có tùy chọn ở đây bằng cách sử dụng các phím số như thế nào $row[0] Cũng ví dụ trên bạn thay mysqli_fetch_array bằng mysqli_fetch_assoc xem có gì thay đổi không nhé! Và kết quả mình nhận được là xuất hiện lỗi. Kết luận là mysqli_fetch_assoc không thể sử dụng $row[0] để xuất dữ liệu. Tiếp theo anh em thay đoạn while ($row = mysqli_fetch_assoc($result)) { print $row[0]; print "\n"; print $row[1]; print "\n"; print $row[3]; print "\n"; print $row[4]."<br/>"; } Bằng while ($row = mysqli_fetch_assoc($result)) { print $row['id']; print "\n"; print $row['username']; print "\n"; print $row['email']; print "\n"; print $row['phone']."<br/>"; } Và kết quả là Kết luận: mysqli_fetch_array dùng để xuất dữ liệu gồm các tên cột còn mysqli_fetch_assoc thì không làm được điều đó. Qua bài viết này hi vọng bạn sẽ biết cách phân biệt giữa 2 cách fetch dữ liệu từ Database như thế nào rồi phải không nào. |