程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 深入理解用mysql_fetch_row()以數組的形式返回查詢結果

深入理解用mysql_fetch_row()以數組的形式返回查詢結果

編輯:PHP綜合
同mysql_result()一樣,mysql_fetch_row()也可以用來獲取查詢結果集,其區別在於函數的返回值不是一個字符串,而是一個數組。函數定義如下。
復制代碼 代碼如下:
array mysql_fetch_row(int result)

參數說明如下。
result:
由函數mysql_query()或mysql_db_query()返回的結果標識,用來指定所要獲取的數據的SQL語句類型。
函數返回值如下。
成功:一個數組,該數組包含了查詢結果集中當前行數據信息,數組下標范圍0~記錄屬性數−1,數組中的第i個元素值為該記錄第i個屬性上的值。
失敗:false。
下面的mysql_fetch_row()使用示例功能同5.5.1中示例。
復制代碼 代碼如下:
1    <!------使用mysql_fetch_row()來獲取數據:mysql_fetch_row.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_row()獲得數據,並輸出
12       while($row=mysql_fetch_row($result))
13       {
14            echo "書名:    ".$row[1]."<br>";
15            echo "價格:    ".$row[2]."<br>";
16            echo "出版日期:    ".$row[3]."<br>";
17            echo "<br>";
18       }
19   ?>

mysql_fetch_row()獲得當前行的數據信息,在被引用後,自動滑動至下一行。本例中在第12行對其的引用為:
復制代碼 代碼如下:
while($row=mysql_fetch_row($result))

在這個循環中,每一次mysql_fetch_row()都獲得當前行數據,並賦值給數組$row,然後自動滑向下一行;在取出最後一行後,函數將返回false,循環結束。這樣,就可以把結果集中的所有數據逐行取出並顯示。
注意
mysql_fetch_row()返回結果數組的下標對應著不同屬性上的值,且只能通過下標方式,而不能使用屬性名方式獲得屬性上的值,在實際應用中容易引起混亂,一定要仔細使用。同時,應注意在使用中不要使用越界下標。
示例正確運行的結果如下。
復制代碼 代碼如下:
書名: 數據結構
價格: 20
出版日期: 2001-01-01
書名: C語言
價格: 23
出版日期: 1998-04-04
書名: PHP入門技術
價格: 22
出版日期: 2005-05-01

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved