本篇文章是對使用mysql_fetch_array()獲取當前行資料的方法進行了詳細的分析介紹,需要的朋友參考下
同mysql_fetch_row()類似,函數mysql_fetch_array()也是獲取結果集中當前行數據,並在呼叫後自動滑向下一行。其定義如下。
array mysql_fetch_array(int result, int [result_type])
參數說明如下。
(1)result:由函數mysql_query()或mysql_db_query()傳回的結果標識,用來指定要取得的資料的SQL語句類型。
(2)result_type:用於指定結果集類型,可選,取值範圍為PHP常數集合{MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH}。
函數傳回值如下。
成功:一個數組,該數組包含了查詢結果集中當前行資料信息,數組下標範圍0~記錄屬性數−1,數組中的第i個元素值為此記錄第i個屬性上的值。同時可以使用屬性名來得到該屬性上的值。
失敗:false。
下面範例使用mysql_fetch_array()得到Computers資料表中價格不小於20的圖書資訊。
1 <!----使用mysql_fetch_array()来获取数据:mysql_fetch_array.php----> 2 <?php 3 //连接并选择到数据库服务器 4 $connection = mysql_connect ("localhost", "root", "password"); 5 mysql_select_db("Books", $connection); 6 //查询数据 7 $query="SELECT * FROM Computers "; 8 $query.="WHERE price >= 20"; 9 //echo $query."<br>"; 10 $result=mysql_query($query,$connection); 11 //mysql_fetch_array()获得数据,并输出 12 while($row=mysql_fetch_array($result)) 13 { 14 echo "书名: ".$row[1]."<br>"; 15 echo "价格: ".$row["price"]."<br>"; 16 echo "出版日期: ".$row["publish_date"]."<br>"; 17 echo "<br>"; 18 } 19 ?>
範例在第12行使用mysql_fetch_array()取得目前行數據,然後在第12~18行的循環中分別使用屬性索引和屬性名稱取得這一行某屬性上的值。從中不難看出,mysql_fetch_array()與mysql_fetch_row()的區別在於,前者返回數組中保存了結果集的兩個備份,一個可以透過屬性索引訪問,另一個則可以透過屬性名稱存取。
注意
當透過屬性名稱存取屬性上的值時,如果有幾個屬性的名稱相同,則索引在後面的屬性會把在前的屬性值覆蓋掉。因此,在使用屬性名取得資料時,要避免查詢結果集中屬性重名。
範例運行的結果如下。
书名: 数据结构 价格: 20 出版日期: 2001-01-01 书名: C语言 价格: 23 出版日期: 1998-04-04 书名: PHP入门技术 价格: 22 出版日期: 2005-05-01
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!
相關推薦:
關於ThinkPHP中Common/common.php檔案常用函數的功能分析
ThinkPHP中initialize()與建構子construct()的用法分析
#
以上是PHP中用mysql_fetch_array()取得目前行數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!