本文主要介紹了PHP中操作MySQL的mysql_fetch函數的常見用法教程,文中提到了其下fetch_array和mysql_fetch_row以及mysql_fetch_object函數的使用。希望對大家有幫助。
mysql_fetch_* 列函數
mysql_fetch_* 列函數的主要功能是從查詢傳回的結果集中取得相關的查詢結果,主要包含:
mysql_fetch_array():從結果集中取得一行作為關聯數組或索引數組,或二者兼有
mysql_fetch_row():從結果集中取得一行作為枚舉數組
mysql_fetch_assoc():從結果集中取得一行作為關聯數組
mysql_fetch_object():從結果集中取得一行作為物件
#mysql_fetch_field():從結果集中取得欄位資訊並作為物件返回
mysql_fetch_lengths():取得結果集中取得一行每個欄位內容輸出的長度
mysql_fetch_array()
mysql_fetch_array() 函數用於從結果集中取得一行作為關聯數組或索引數組,或二者兼有。成功傳回一個數組,否則傳回 FALSE 。
語法:
array mysql_fetch_array( resource result [, int result_type] )
#參數說明:
result:查詢函數(如mysql_query)傳回的資料集資源
result_type:可選常數,標明數組結果類型,可接受值如下:
#MYSQL_BOTH:默認,得到一個同時包含關聯和數字索引的數組,用字段名作為鍵名
MYSQL_ASSOC:只得到關聯索引的數組
MYSQL_NUM:只得到數字索引的陣列
#範例1 ,使用MYSQL_NUM :
<?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set character set 'gbk'"); $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_array($result, MYSQL_NUM)){ echo "用户ID:".$row[0]."<br />"; echo "用户名:".$row[1]."<br />"; } ?>
瀏覽器輸出:
用户ID:1 用户名:admin 用户ID:2 用户名:小明 用户ID:3 用户名:Jack 用户ID:4 用户名:小王
範例2 ,使用MYSQL_ ASSOC:
//重复代码省略 $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_array($result, MYSQL_ ASSOC)){ echo "用户ID:".$row['uid']."<br />"; echo "用户名:".$row['username']."<br />"; }
瀏覽器輸出內容同上。
當使用 MYSQL_BOTH 或省略該參數是,將同時具有 MYSQL_NUM 與 MYSQL_ ASSOC 的特性。
說明
本函數傳回的欄位名稱作為數組鍵值是區分大小寫的
用mysql_fetch_array() 並不明顯比用mysql_fetch_row() 慢,而且還提供了明顯更多的值
該函數只從當前資料指標取得一行資料作為結果返回,如果執行過一次,會將資料指標指向下一列資料
如果要取得多行或全部數據,則需要使用循環結構將資料逐行取出
如果結果中的兩個或以上的欄位具有相同欄位名,則最後一列將優先。要存取同名的其它列,必須用該列的數字索引或給該列起個別名
mysql_fetch_row()
PHP 的MySQL 操作函數mysql_fetch_row()用於從結果集中取得一行作為枚舉數組。成功傳回一個數組,否則傳回 FALSE 。
語法:
array mysql_fetch_row( resource result )
該函數表現與mysql_fetch_array( resource result, MYSQL_NUM ) 一致,請參考mysql_fetch_array( ) 函數用法,在此不在贅述。
mysql_fetch_object()
PHP 操作 MySQL 的函數 mysql_fetch_object() 用於從結果集中取得一行作為對象,成功傳回一個對象,否則傳回 FALSE 。
語法:
object mysql_fetch_object( resource result )
#範例:
##
<?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set character set 'gbk'"); $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_object($result)){ echo "用户ID:".$row->uid."<br />"; echo "用户名:".$row->username."<br />"; } ?>
#
用户ID:1 用户名:admin 用户ID:2 用户名:小明 用户ID:3 用户名:Jack 用户ID:4 用户名:小王
以上是PHP之mysql_fetch系列函數詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!